Gibt es eine effiziente Möglichkeit, die tiefste Nachkommastelle eines bestimmten Elements zu zählen?DOM-Hierarchie-Level des Elements abrufen (Anzahl der Nachkommen-Level)
Beispiel:
<div id="wrapper">
<ul>
<li class="first">first</li>
<li class="active">second</li>
<li class="last"><a>third</a></li>
</ul>
</div>
#wrapper
sollte ein Nachkomme Niveau 4
zurück, weil die tiefste Kette so geht: #wrapper > ul > li > a
.
li.first
sollte 1
zurückkehren, weil sie keine Kinder hat und li.last
zurückkehren sollte 2
wegen li.last > a
.
Ich könnte eine $('#wrapper').find(*)
tun und alle Ergebnisse durchlaufen, die ziemlich langsam für Elemente sein sollte, die viele Nachkommen haben, vor allem für das body
Element. Hier
ist ein Anfang für das Experimentieren: http://jsbin.com/ixeWaja/1/edit
Irgendwelche Ideen, wie effizient dieses Problem lösen?
_ "Gibt es eine effiziente Möglichkeit," _ _efficint_ definieren, aber im Grunde ** No. ** – gdoron
Wenn '#wrapper> ul> li> a' 3 (dh' # Wrapper "hat 3 Ebenen von Nachkommen), sollte dann nicht" li.first "0 und" li.last "1 sein? – BoltClock
Danke, korrigiert es. – Alp