手机
当前位置:查字典教程网 >编程开发 >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获得url查询参数的方法

JQuery中DOM事件冒泡实例分析

JavaScript事件的理解

Javascript事件触发列表与解说

Javascript监视变量变化的方法

JavaScript获得指定对象大小的方法

javascript委托(Delegate)blur和focus用法实例分析

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

JavaScript中使用自然对数ln的方法

JavaScript中eval函数的问题

精品推荐
分类导航