我們可以使用closest(selector)
來查找匹配選擇器的第一個祖先元素。它將向上移動 DOM樹,直到它找到匹配的選擇器。但是,如果我想要在下調 DOM樹,直到它找到匹配選擇器?有沒有這樣做的jQuery功能?還是我需要使用廣度優先搜索來實現?如何用jQuery找到最接近的後代(匹配選擇器)?
舉個例子。對於下面的DOM樹,
<div id="main">
<div>
<ul><!-- I want to match this ul -->
<li>
<ul><!-- but not this ul -->
</ul>
</li>
</ul>
<ul><!-- and match this ul -->
</ul>
</div>
</div>
如何做類似$('#main').closestDescendants('ul')
?
這要求您有一些錨點#main,而不是將其定位到某個上下文元素。有沒有一種方法可以編寫它,以便它只相對於一個範圍,並且它不匹配匹配基於高於上下文範圍的祖先的元素? – 2011-03-06 01:42:59