选择除一个之外的所有div

Kin*_*ong 3 javascript jquery jquery-selectors dom-traversal

<div id="main">
 <div class="a"></div>
 <div class="b"><p>not me</p></div>
 <div class="b"></div>
 <div class="b"></div>
 <div class="c"></div>
</div> 
Run Code Online (Sandbox Code Playgroud)

我们如何编写一个选择器来选择all divs with class b除了谁的孩子<p>not me</p>

gdo*_*ica 10

$('div.b:not(:has(p))').........
Run Code Online (Sandbox Code Playgroud)

或者是可读的版本

$('div.b').filter(function(){
    return !$(this).find('p').length;
});
Run Code Online (Sandbox Code Playgroud)

如果您还想匹配内容:

$('div.b').filter(function(){
    return $(this).find('p').text() !== "not me";
});
Run Code Online (Sandbox Code Playgroud)

现场演示