jQuery单击添加类,单击其他地方删除

时间:2012-12-29 15:14:17

标签: jquery click addclass

无法在任何地方找到答案,但基本上我想在点击时向锚点添加“活动”链接,然后在点击其他锚点时将其删除。这些锚点是散列的href,而不是真实的链接,因为它们充当过滤器。

这是我到目前为止所拥有的:

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

任何帮助?

谢谢, [R

2 个答案:

答案 0 :(得分: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()
});

答案 1 :(得分: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;
    } );

} );