有沒有一種有效的方法來計算特定元素的最深的後代級別?獲取元素的DOM層次結構級別(計數子孫級別)
舉例:#wrapper > ul > li > a
:
<div id="wrapper">
<ul>
<li class="first">first</li>
<li class="active">second</li>
<li class="last"><a>third</a></li>
</ul>
</div>
#wrapper
因爲最深鏈是這樣的應返回的4
後裔水平。
li.first
應該返回1
,因爲它沒有兒童和li.last
應該返回因爲li.last > a
2
。
我可以做一個$('#wrapper').find(*)
並遍歷所有結果,對於有很多後代的元素,特別是對於body
元素,這應該會很慢。
這裏是試驗開始:http://jsbin.com/ixeWaja/1/edit
任何想法如何有效地解決這個問題?
_ 「有沒有一種有效的方法」 _定義_efficint_,但基本上,**號** – gdoron
如果'#wrapper指定> ul> li>了'爲3(即'#包裝器有3個級別的後代),那麼'li.first'不應該是0,'li.last'應該是1? – BoltClock
謝謝,糾正它。 – Alp