javascript 代码
- 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, 实现了点击当前, 执行当前特别的动作.
这个适用于同一群组执行类似的动作, 通过索引区别小小的不同.
来源: http://www.qdfuns.com/article/44187/3fc326dbd7dd5c05977238b29e018720.html