var x=document.getElementsByTagName('div')//获取所有div,给div绑定点击事件 //第一次循环,给每个div绑定点击事件,并把索引值赋值到新的属性中 for (var i =0; i<x.length; i++) { x[i].index=i;//给每个div创建个属性index,并把对应的i赋值到当前index属性 x[i].onclick=function(){ for(var j=0;j<j.length;j++)//第二次循环通过索引值判断,当前点击的div { if (this.index==j){ //点击需要执行的动作 } } } }
要弄清楚代码执行的顺序,在点击之前,第一个for循环执行完毕,每个div都绑定了点击事件,此时的i=3,所以不能直接用i做索引值,通过给每个获取到的x(属性是对象)追加属性index,并且把相应的i值循环中赋值到index,实现了点击当前,执行当前特别的动作。
这个适用于同一群组执行类似的动作,通过索引区别小小的不同。
欢迎分享本文,转载请保留出处:前端ABC » js给类似群组绑定事件