क्या कोई विशिष्ट तत्व के गहरे वंशज के स्तर को गिनने का कोई प्रभावी तरीका है?तत्व के डोम पदानुक्रम स्तर प्राप्त करें (वंश के स्तर की गणना करें)
उदाहरण:
<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
का वंशज स्तर लौट जाना चाहिए, क्योंकि गहरे श्रृंखला इस प्रकार है: #wrapper > ul > li > a
।
li.first
1
लौटना चाहिए क्योंकि यह कोई संतान नहीं है और li.last
li.last > a
की वजह से 2
लौटना चाहिए।
मैं $('#wrapper').find(*)
कर सकता हूं और सभी परिणामों के माध्यम से पुनरावृत्त कर सकता हूं, जो उन तत्वों के लिए काफी धीमा होना चाहिए जिनमें बहुत से वंशज हैं, खासकर body
तत्व के लिए। http://jsbin.com/ixeWaja/1/edit
कोई भी विचार कैसे कुशलतापूर्वक इस हल करने के लिए:
यहाँ प्रयोग करने के लिए एक शुरुआत है?
_ _ _efficint_ परिभाषित "वहाँ एक कारगर तरीका है", लेकिन मूल रूप से, ** नहीं। ** – gdoron
तो '#wrapper> ul> li> A' है 3 (यानी' # रैपर 'में वंश के 3 स्तर होते हैं), तो' li.first' होना चाहिए और 'li.last' 1 होना चाहिए? – BoltClock
धन्यवाद, इसे सही किया गया। – Alp