JavaScript 获取元素在父节点中的下标

作者:窗边听雨时间:2026-10-22 05:09:00浏览:454

本文介绍如何在原生JavaScript中获取元素在父节点中的下标。由于原生JS没有类似jQuery的index()方法,可以通过querySelectorAll获取节点列表,并利用数组的indexOf方法配合call来改变调用者对象,从而计算出目标元素的索引位置。

原生JS获取元素索引的方法

在jQuery库中,开发者可以直接使用$(this).index()来获取当前元素的下标。然而,原生JavaScript并未提供类似的内置属性或方法。在这种情况下,可以利用数组原型中的indexOf方法来进行计算。


<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);

该方法的目的是计算元素elt在其父节点下,相同标签元素中的位置。首先,通过var list=elt.parentNode.quertSelectorAll('li')获取同类标签的列表。如果直接执行list.indexOf(elt),会报错提示list没有indexOf函数。此时,可以借用数组原型中的indexOf方法,通过call改变调用者对象:[].indexOf.call(list,elt)等价于list.indexOf(elt)。

以上所述是小编给大家介绍的JavaScript 获取元素在父节点中的下标,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对本站网站的支持!

作者最新文章