1

在任何地方都找不到答案,但基本上我想在单击时向锚点添加一个“活动”链接,然后在单击另一个锚点时将其删除。这些锚点是哈希href,而不是真正的链接,因为它们充当过滤器。

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

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

有什么帮助吗?

谢谢,R

4

2 回答 2

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()
});
于 2012-12-29T15:15:32.347 回答
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;
    } );

} );
于 2012-12-29T15:25:29.333 回答