查找具有一个类而没有其他类的元素

时间:2013-09-25 04:28:09

标签: jquery

是否有一种优雅的方式使用jQuery来查找具有类A且没有类B的元素,类似于

$('#canvas .A !.B').each(functon() {
          do something
});

我很确定这不会起作用,但这就是想法。

我知道我能做到

$('#canvas .A').each(function() {
    if(!$(this).hasClass('B'){
          do something
    }
});

但感觉真的很笨重。

由于

4 个答案:

答案 0 :(得分:6)

$('#canvas .A').not(".B").each(functon() {
          do something
});

参考 not

答案 1 :(得分:0)

使用Jquery你可以:

$(".classA").not(".classB");

答案 2 :(得分:0)

您也可以在单个选择器中执行此操作,例如:

$('#canvas .A:not(.B)').each(function() {
    // console.log($(this));
});

答案 3 :(得分:0)

有两种方法可以做到这一点。您可以使用:not选择器或jquery的.not()

$('#canvas .A:not(.B)').each(functon() {
          do something
});

或者

$('#canvas .A').not(".B").each(functon() {
              do something
    });