我有几个帖子看起来像这样(“测试”是帖子):
<div class="test">
<p><a href="">test</a></p>
<span class="thumbs-rating-up thumbs-rating-voted" onclick="thumbs_rating_vote(4, 1);" data-text="Vote Up"> +1</span>
</div>
<div class="test">
<p><a href="">test</a></p>
<span class="thumbs-rating-up" onclick="thumbs_rating_vote(4, 1);" data-text="Vote Up"> +1</span>
</div>
如你所见。其中一些帖子有thumbs-rating-voted
类。我想做的是如果帖子有该类,则在帖子链接中添加一个类。
我试过这个:
jQuery(document).ready(function($) {
setTimeout(function() {
if ($('.thumbs-rating-up').hasClass('thumbs-rating-voted')) {
$('#test p > a').addClass('hide-voted-image');
alert('test');
}
}, 3000);
});
但它会影响所有帖子,如fiddle
所示答案 0 :(得分:0)
首先,ID 必须才是唯一的!其次,你必须循环遍历每个div并单独检查类并从那里开始,但为什么这样做,当你可以循环你的检查类并将类添加到锚:
$(".thumbs-rating-voted").each(function() {
$(this).prev("p").find("a").addClass("hide-voted-image");
});
或者,正如@DavidThomas指出的那样
$(".thumbs-rating-voted").prev("p").find("a").addClass("hide-voted-image")