<div class="container" id = "0" >
<div class="x" id = "1">
<div id = "2">
<p id = "3">
<span id = "4" >text</span>
</p>
<div>
</div>
<div id="5">
<div id="6">
<p id="7">
<span class="x" id="8" >text</span>
<span id="9">text</span>
</p>
<div>
</div>
<div>
Можете ли вы помочь мне выбрать все элементы:
- которые являются потомками '.container "'
- не является потомком '.x'
- не имеет самого класса .x.
Глядя на HTML выше; следует выбрать элементы 5,6,7 и 9
- Элемент 1 имеет класс "X"
- Элементы 2 являются прямым потомком элемента с классом "X" (Элемент 1)
- Элементы 3 и 4 являются потомками элемента с классом "X" (Элемент 1)
Элемент 8 имеет класс "X"
У меня есть этот селектор, но он продолжает выделять потомков (глубоких потомков) элемента класса "X"
var elements = $('.container').find().parents(':not(.X)').andSelf().filter(':not(.X)');