我想知道如何解决问题。 例如,我们有:
<li>
<a class="disabled">
</li>
<li>
<a class="disabled">
</li>
<li>
<a href ="http://..." class="active">
</li>
<li>
<a class="disabled">
</li>
如何使用jquery添加到<a>
标记类NEWCLASS,用于<a>
之前<a>
类活动,所以我们将获得
<li>
<a class="disabled NEWCLASS">
</li>
<li>
<a class="disabled NEWCLASS">
</li>
<li>
<a href ="http://..." class="active">
</li>
<li>
<a class="disabled">
</li>
答案 0 :(得分:3)
$('a.active').parent().prevAll().children('a').addClass('NEWCLASS')
请参阅Fiddle
答案 1 :(得分:0)
您将需要父ul
或ol
的选择器,但我们假设它是LIST
。
// Get index of active link
before = $(".LIST li a").index($("a.active"))
// Add class to all links before active link
for (var i = 0; i < before; i += 1) {
$(".LIST li a").eq(i).addClass("NEWCLASS");
}
答案 2 :(得分:0)
您可以结合使用prev()
和children()
:
$('li a.active').parent().siblings().prev().children('a').not('.active').addClass('NEWCLASS');
答案 3 :(得分:0)
var activeAnchor = $('li a.active').parent().prevAll("li:has(a)").find('a.disabled').toggleClass('disabled active');
答案 4 :(得分:-1)
您可以尝试这样的事情:
$( "a.active" ).each(function( index ) {
$( this ).addClass( "NEWCLASS" );
});