手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >JavaScript在for循环中绑定事件解决事件参数不同的情况
JavaScript在for循环中绑定事件解决事件参数不同的情况
摘要:有时候要对响应一堆相似的事件,但是每个事件的参数都不同,一开始还以为挺简单的,用个for循环不就得了,结果发现,额,都是使用了最后一个参数。...

有时候要对响应一堆相似的事件,但是每个事件的参数都不同,一开始还以为挺简单的,用个for循环不就得了,结果发现,额,都是使用了最后一个参数。。。

上网查资料!!!结果大神说用闭包解决

代码:

复制代码 代码如下:

for(var i=0;i<10;i++){

btns[i].onclick=(function(i){

return function(){alert(i)}

})(i)

}

大概原因是直接用btns[i].onclick=function(){alert(i)}时,JavaScript引擎会先将for循环里的代码执行完,

当用户出发onclick事件时,JavaScript会寻找i,结果会找到运算完成之后的i,也就是10

但是用闭包处理的话,i会成为函数的局部变量

【JavaScript在for循环中绑定事件解决事件参数不同的情况】相关文章:

JavaScript事件委托实例分析

JavaScript实现点击自动选择TextArea文本的方法

JavaScript检测字符串中是否含有html标签实现方法

JavaScript中for循环的使用详解

JavaScript框架是什么?怎样才能叫做框架?

javascript实现dom动态创建省市纵向列表菜单的方法

javascript先序遍历DOM树的方法

浅析JavaScript中的事件机制

JavaScript事件的理解

JQuery中DOM事件冒泡实例分析

精品推荐
分类导航