(continue from other question)
<div id="main">
<div class="a">aaaa</div>
<div class="b"><p>not me</p></div>
<div class="b">bbbb</div> <!-- select this-->
<div class="b">bbbb</div> <!-- select this-->
<div class="c">cccc</div>
</div>
我正在尝试选择内容为b
的所有div,其内部没有<p>not me</p>
。
我试过了:
$('div.b:not(:has(p:contains(not me)))').css('color', 'red');
但是从一些不明原因它不起作用,有趣的是,如果我删除:not()
部分:
$('div.b:has(p:contains(not me))').css('color', 'blue');
确实选择了不需要的div,因此问题必须是:not
我知道还有其他甚至更好的方法,(我甚至在这个问题上给了一些),但我很想知道为什么:not
+ :contains
似乎不在一起。
答案 0 :(得分:3)
答案 1 :(得分:1)
工作:不 + :包含
的示例$('div.b:not(:contains("not me"))').css('color', 'cyan');
会更改所有不包含&#34;而不是我&#34;的div.b的颜色。
答案 2 :(得分:0)
我认为这与:has
试试这个:
$('div.b:not(:contains(not me))').css('color', 'red');