jQuery选择器:当存在多个类时选择某个类的组合

Wol*_*old 6 javascript jquery jquery-selectors

我已经尝试过做一些研究但没找到任何东西,但如果我错过了答案,请告诉我.基本上我有多个元素,每个元素有多个类,但组合是唯一的.我想选择某种类的组合,但不要选择其他元素与其他元素结合使用.

我想知道这个选择器是否存在于jQuery中,或者是否还有其他方法可以实现我所解释的内容.请参阅以下示例:

<div class="a b c"></div>
<div class="a b c d"></div>
<div class="a b c d">/div>
Run Code Online (Sandbox Code Playgroud)

当尝试仅使用类记录元素时a b c,我尝试使用:

$('.a.b.c').each( function() {
    console.log($(this));
}
Run Code Online (Sandbox Code Playgroud)

输出是:

[ <div class="a b c">...</div> ,
<div class="a b c d">...</div ,
<div class="a b c d">...</div> ]
Run Code Online (Sandbox Code Playgroud)

我正在寻找输出:

[ <div class="a b c">...</div> ]
Run Code Online (Sandbox Code Playgroud)

任何指导表示赞赏.谢谢!

Jos*_*ier 8

您可以使用CSS3 :not()伪类 来否定.d该类:( 示例)

$('.a.b.c:not(.d)').each( function() {
    console.log($(this));
});
Run Code Online (Sandbox Code Playgroud)

jQuery也有一个.not()方法 :( 示例)

$('.a.b.c').not('.d').each( function() {
    console.log($(this));
});
Run Code Online (Sandbox Code Playgroud)

您还可以使用属性选择器:( 示例)

[class="a b c"]
Run Code Online (Sandbox Code Playgroud)

请注意,订单始终必须是a b c.只是将其作为一种选择.