2017-08-05 100 views
1

我如何使用Rate Yo帶數據屬性的jQuery星級評分插件?
有什麼辦法通過HTML屬性設置默認初始值?
是否有可能使用data-rateyo-score來通過score值。
如何使用Rate Yo jQuery星級評分插件和數據屬性?

例如,如果我想根據動態值開始我的分數,我該如何使用回調?

我的代碼是相同的,如下:
<div class="rateYo" data-rateyo-score="1"></div>

我試試下面的代碼:

$('.rateYo').rateYo({ 
    score: function() { 
    return $(this).attr('data-rateyo-score'); 
    } 
}); 

這:

$('.rateYo').rateYo({ 
    score: $(this).attr('data-rateyo-score'); 
    } 
}); 

但似乎,什麼是錯。

回答

2

使用 「數據rateyo評級= '1'」,而不是 「數據rateyo得分= '1'」

$(function() { 
 
    $(".rateyo").rateYo().on("rateyo.change", function (e, data) { 
 
    var rating = data.rating; 
 
    $(this).parent().find('.score').text('score :'+ $(this).attr('data-rateyo-score')); 
 
    $(this).parent().find('.result').text('rating :'+ rating); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/rateYo/2.3.2/jquery.rateyo.min.js"></script> 
 
<link href="https://cdnjs.cloudflare.com/ajax/libs/rateYo/2.3.2/jquery.rateyo.min.css" rel="stylesheet"/> 
 
<div> 
 
    <div class="rateyo" 
 
     data-rateyo-rating="1" 
 
     data-rateyo-num-stars="5" 
 
     data-rateyo-score="4"></div> 
 
     <span class='score'>0</span> 
 
     <span class='result'>0</span> 
 
</div> 
 
<hr> 
 
<div> 
 
    <div class="rateyo" 
 
     data-rateyo-rating="2.4" 
 
     data-rateyo-num-stars="5" 
 
     data-rateyo-score="1"></div> 
 
     <span class='score'>0</span> 
 
     <span class='result'>0</span> 
 
</div> 
 
<hr> 
 
<div> 
 
    <div class="rateyo" 
 
     data-rateyo-rating="4" 
 
     data-rateyo-num-stars="5" 
 
     data-rateyo-score="3"></div> 
 
     <span class='score'>0</span> 
 
     <span class='result'>0</span> 
 
</div>

+0

感謝您的幫助和回覆,我有幾個我希望將'rateYo'設置爲每個人的不同值,但是當我將其設置爲一個值時,它將針對某個類的所有元素進行配置(例如,如果第一個評分爲1元素,它對於所有元素都是1)。 –

+0

我改變了代碼。我認爲接近你的想法。現在每個部分都獨立於其他部分。祝你好運 –

+0

'data-rateyo-score'的價值也可以像你的樣品 –