【发布时间】:2012-06-13 11:09:46
【问题描述】:
(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 且其中没有 <p>not me</p> 的 div。
我试过了:
$('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 似乎不在一起。
【问题讨论】:
-
@eric.itzhak。请阅读最后一段...或其他问题。
-
我认为 :not 应该与 :has... 一起工作
-
我认为罪魁祸首是
:has而不是:not -
@undefined。它们可以一起工作。
标签: javascript jquery jquery-selectors