Я использую этот шаблон для отображения рейтинга рядом с пользователем.получение данных из базы данных до 5 stars rating
{insert name=get_percent value=a assign=mpercent userid=$p.USERID}
{if $mpercent ne ""}
<div class='user-rate'>
rate<span class='green'>{$mpercent}%</span>
</div>
{else}
<div class='user-rate'>not rated yet</div>
{/if}
Я хочу изменить рейтинг от процентного значения до звездного рейтинга (0-5).
Я попытался ответить в this link
это код, как я добавил следующий CSS:
span.stars, span.stars span {
display: block;
background:url(../images/stars.png) 0 -16px repeat-x;
width: 80px;
height: 16px;
}
span.stars span {
background-position: 0 0;
}
И JavaScript:
$(function() {
$("span.stars").stars();
});
$.fn.stars = function() {
return $(this).each(function() {
$(this).html($('<span />')
.width(Math.max(0, (Math.min(5, parseFloat($(this).html())))) * 16));
});
}
И использовали это для каждого из оценки:
<p> <span class="stars">{$mpercent}</span> </p>
Я использовал {$mpercent}
, чтобы получить рейтинг участника, но в результате я получаю 5 звезд все время.
Если я изменю значение класса span на фиксированное число (скажем, 1,2 или 3), я получаю тот же результат.
Я переформатировал ваш вопрос - если вы поставите время, чтобы сделать вопрос разборчивым, тогда вы получите гораздо больше шансов получить ответ. –