有什么方法可以得到父div中点击div的索引吗?
下面是一个例子:
<div class="parent">
<div id="1" class="child"></div>
<div id="2" class="child"></div>
<div id="3" class="child"></div>
<div id="4" class="child"></div>
</div>
<script>
var parent = document.getElementsByClassName("parent");
var child = document.getElementsByClassName("child");
for(var i=0; i < parent.length; i++){
parent[i].addEventListener("click", function(e){
console.log(e.target)
console.log(e.target.parentNode)
});
}
</script>
我的意思是,有没有什么方法可以得到点击div的索引?例如,如果我单击id为“1”的div,它将在控制台中打印“0”,因为它的索引为0。如果我单击id为“2”的div,它将在控制台中打印“1”,因为它的索引是1,依此类推。
有什么办法可以做到这一点吗?(不使用属性)
2条答案
按热度按时间klh5stk11#
使用
Array.prototype.indexOf()
查找parent.children
中的子对象使用ES6
Array.prototype.findIndex()
;但是,这可能会在IE上给予一些问题。
v6ylcynt2#
在ES6中:你也可以像下面这样做