2012-12-29 50 views
1

無法在任何地方找到答案,但基本上我想在點擊時添加一個'主動'鏈接到錨點,然後在單擊另一個錨點時將其刪除。這些錨點是散列的hrefs,而不是真正的鏈接,因爲它們充當過濾器。jQuery點擊添加班級,點擊其他地方刪除

這是我到目前爲止有:

$('.section-filters a').click(function() { 
     $(this).addClass('active'); 
     var selector = $(this).attr('data-filter'); 
     $container.isotope({ 
      filter: selector 
     }); 
     return false; 
}); 

任何幫助嗎?

感謝, [R

回答

4

可以使用removeClass方法。

$('.section-filters a').click(function (event) { 
    $('a.active').removeClass('active'); 
    var $this = $(this); 
    $this.addClass('active'); 
    var selector = $this.attr('data-filter'); 

    $container.isotope({ 
     filter: selector 
    }); 
    return false; // event.preventDefault() 
}); 
+0

這是有道理的;不知道這是否會起作用,但我想這個層次結構是有幫助的。非常感謝。 –

0

記得最後活躍在一個變量,例如這樣來做:

$('.section-filters').each(function() { 
    var $active = $(); 

    $('a', $(this)).on('click', function() { 
     $active.toggleClass('active'); 

     $active = $(this); 

     $active.toggleClass('active'); 

     $container.isotope({ 
      filter: $active.attr('data-filter') 
     }); 
     return false; 
    }); 

});