jquery select元素,它没有活动类

时间:2011-12-14 15:27:52

标签: jquery jquery-selectors css-selectors

我想在用户点击元素时制作动画。除非元素具有“活动”类。

<div class="collectionContainer">
            <div class="collectionName">SPRING SUMMER <br> 2012</div>
            <div class="collSex"><a href="#" id="collection1-man" class="active"> MAN </a></div>
            <div class="collSex"><a href="#" id="collection1-woman"> WOMAN </a></div>
        </div> 

我的jquery代码

$('.collSex a').click(function(){
        $('.collSex a').removeClass('active');
        $(this).addClass('active');
        ...
        ...
    });

当一个元素具有活动类时,我不想制作动作/动画......

我该怎么做?

4 个答案:

答案 0 :(得分:3)

您可以使用.hasClass [docs]方法:

$('.collSex a').click(function(){
    if(!$(this).hasClass('active'))
        $('.collSex a.active').andSelf().toggleClass('active');
        //...
    }
});

或使用事件委托:

$('.collSex').on('click', 'a.active', function() {
    $('.collSex a.active').andSelf().toggleClass('active');
    //...
});

答案 1 :(得分:2)

$('.collSex a').click(function(){ 
    if($(this).hasClass('active'))
    ... 
    ... 
}); 

答案 2 :(得分:1)

使用jQuery hasClass方法尝试此操作。

$('.collSex a').click(function(){ 
    if(!$(this).hasClass('active'))
    {
         //Your code here.
    } 
}); 

答案 3 :(得分:1)

也许你可以利用不是选择器

$('collsex a:not(.active)').click(function(){ ....};