لا يمكن الآن الحصول على الوظيفة التي تحصل على عقدة العنصر nth فقط الحصول على عناصر من خلال علامة HTML ، ووظائفها ليست مثالية.
العرض التوضيحي: HTML
<ul id = "list"> <li> 1 <button> a </butting> </li> <li> 2 <butting> b </nutton> <button> o </butting> </li> <p> test </p> <li> 3 <button> c </s button> </li> <li> 4 <butn> d </button> </li> </li> 5 </li> </li> </li>
JS:
/**** @param parent node*param ele element label لتحديد*param num أي العنصر هو الأول*{*}*/function nth (parent ، ele ، num) {var _ele = array.prototype.slice.call (parent.childnodes) ، elearray = [] صفيف لا يخزن سوى عقد العناصر لـ (var i = 0 ، len = _ele.length ؛ i <len ؛ i ++) {if (_ele [i] .nodeType == 1) {eLearRay.push (_ele [i]) ؛ المعلمة الثانية هي رقم ، حدد عدد العناصر الموجودة أسفل العقدة الأصل. return _ele ؛} آخر if (typeof mations [1] === "number") {return elearray [الوسيطات [1]] ؛}} else {// إذا كانت المعلمات كاملة ، والعودة إلى العقدة ، ويبدأ الفهرس من 0_ele = array.prototype.slice.call (parent.getelementsby. _ele [num] ؛}}/*test*/var list = document.getElementById ("list") ؛ console.log (قائمة ، "li" ، 2) .innerhtml) console.log (nth (nth (list ، "li" ، 1) ، "button" ، 1) .innerhtml) ؛ // حدد الزر الثاني console.log (nth (nth (list ، "li" ، 1) ، "button")) ؛