jQuery:not选择器问题(用:not组合后代选择器)

时间:2018-11-20 14:54:35

标签: jquery

我尝试组合后代选择器(.a .b)(仅选择类为.b的项目,如果它们是.a的间接子项)。使用:not(.a)(仅选择不是.a类的选择器)选择器。

我在jsfiddle中设置了一个简单的示例:https://jsfiddle.net/eqj1p3gf/1/

我想选择所有类.wanted的元素,但前提是它们不是.aaa类元素的间接子元素。

<div class="aaa">
  <div class="something">
    <div class="wanted">
      I don't want this
    </div>
  </div>
</div>
<div class="bbb">
  <div class="somethingelse">
    <div class="wanted">
      I only want this
    </div>
  </div>
</div>

为此,我尝试使用以下选择器:$(":not(.aaa) .wanted"),但是它选择了两个.wanted元素,因为两个元素的父级都不为.aaa

如何创建这样的选择?

1 个答案:

答案 0 :(得分:0)

要进行这样的选择,您首先要选择所有.wanted元素,然后使用:not取消选择所有带有父.wanted的{​​{1}}元素:

.aaa