jQuery中直接通過(guò)$(this).index()即可得到當(dāng)前元素的下標(biāo)。但原生JavaScript并沒(méi)有提供類(lèi)似的屬性或方法,這時(shí)候可以調(diào)用數(shù)組中的indexOf方法直接計(jì)算
<ul> <li>hello</li> <li>hello</li> <li id="mts">hello</li> <li>hello</li></ul>var elt=document.getElementById('mts');var index=var index = [].indexOf.call(elt.parentNode.querySelectorAll(elt.tagName),elt);console.log(index);這里是計(jì)算elt在其父節(jié)點(diǎn)下,相同標(biāo)簽的元素中的位置。首先通過(guò)var list=elt.parentNode.quertSelectorAll('li')獲得同類(lèi)標(biāo)簽的列表,這里如果直接執(zhí)行l(wèi)ist.indexOf(elt)的話(huà)會(huì)出錯(cuò),提示list沒(méi)有indexOf這個(gè)函數(shù),這時(shí)候可以借用數(shù)組中的indexOf,通過(guò)call改變調(diào)用者對(duì)象:[].indexOf.call(list,elt)等價(jià)于list.indexOf(elt)
以上所述是小編給大家介紹的JavaScript 獲取元素在父節(jié)點(diǎn)中的下標(biāo),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)武林網(wǎng)網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注