Добрый день! Возникла проблема, для создания рейтинга товара. Использую jquery плагин
rateYo.
Суть вопроса! Есть множество товаров, у них есть рейтинг в виде звёздочек.
Так я устанавливаю рейтинг на товары после загрузки страницы
<div class="catalogItemRate" data-rateyo-rating="1.2"></div>
<div class="catalogItemRate" data-rateyo-rating="2.2"></div>
<div class="catalogItemRate" data-rateyo-rating="3.2"></div>
<div class="catalogItemRate" data-rateyo-rating="4.2"></div>
$('.catalogItemRate').rateYo({
starWidth: '23px',
maxValue: 5,
normalFill: '#fff',
ratedFill: '#8C5E8D',
spacing: '5px',
onInit: function (rating, rateYoInstance) {
// Установить рейтинг после загрузки страницы
var
rateElem = $(rateYoInstance.node),
rateElemRatio = rateElem.data('rateyo-rating');
rateElem.rateYo('rating', rateElemRatio);
},
onSet: function (rating, rateYoInstance) {
alert('Спасибо, рейтинг товара составляет ' + rating + ' баллов');
}
});
Всё ок. Товары получили свои значения рейтинга. Но вот теперь задача, вроде простая, но теперь я хочу что бы пользователь сам мог отмечать на сколько ему понравился товар. Тут всё просто, используем метод
onSet и там делаем что хотим дальше.
Но когда я изначально, при загрузке страницы, устанавливаю эти значения из атрибута, то каждый раз срабатывает метод
onSet. Что логично, ведь мы установили значение.
Я хочу сделать уведомление, когда пользователь проголосовал, но в итоге alert еще появляется каждый раз, при установке значения через метод
onInit