私のウェブサイトには、人々がそこに評価を出すことができるサーバル結果のページがあります。
ページ上の 1 つの評価リストではすべて正常に動作しますが、複数の場合、ホバーする正しいリスト (これ) を選択することで少し問題が発生しました。現在、ホバーされるのは常にhtmlコードの最初のリストです(カーソルを2番目の評価リストに最初に置くと、ホバーします)。
html:
<ol class="rating" data-rating="4">
<li class="Arad5fQEnoZlv9E59d"><a title="Super boring" class="rate starOn" id="1">1 star</a></li>
<li class="Arad5fQEnoZlv9E59d"><a title="Boring" class="rate starOn" id="2">2 stars</a></li>
<li class="Arad5fQEnoZlv9E59d"><a title="Nice" class="rate starOn" id="3">3 stars</a></li>
<li class="Arad5fQEnoZlv9E59d"><a title="Cool" class="rate starOn" id="4">4 stars</a></li>
<li class="Arad5fQEnoZlv9E59d"><a title="Super cool!" class="rate star" id="5">5 stars</a></li>
<div class="response">Score 4 By 2 ratings</div>
</ol>
良い仕事をしない私のjavascriptの部分:
$('ol.rating li', this).hover(function(){
var id = $('a', this).attr('id');
var counter = 1;
var salt = $(this).attr('class');
console.log('ol.rating li.'+salt);
$('ol.rating li.'+salt).each(function(i){
if (id >= counter) {
$('a#'+counter).addClass("starHover");
} else {
$('a#'+counter).removeClass("starHover");
}
counter++;
});
});
私の質問が少し明確であることを願っています:)
前もって感謝します!ニック