javascript循环变量注册dom事件 之强大的闭包


Posted in Javascript onSeptember 08, 2010

今天遇到了这个问题:

//伪代码 
for (var i=0; i<n; i++) { 
addEvent(obj[i], "click", func(i)); 
}

结果出现了问题,所有的dom都被注册了 i=n 的时候的事件,查了一些资料,说是在循环过程过this被改变,注册过的事件也被随之改变,找到了一种解决方法;
for (var i=0; i<n; i++) { 
(function (i){addEvent(obj[i], "click", function (){func(i);});})(i); 
}

利用必包保持对变量的持久引用,很强大的说!
(如果您有更好的方法,请不吝赐教(*^__^*) 嘻嘻……)
Javascript 相关文章推荐
js setTimeout()函数介绍及应用以倒计时为例
Dec 12 Javascript
input禁止键盘及中文输入,但可以点击
Feb 13 Javascript
jQuery级联操作绑定事件实例
Sep 02 Javascript
深入理解关于javascript中apply()和call()方法的区别
Apr 12 Javascript
浅谈jQuery添加的HTML,JS失效的问题
Oct 05 Javascript
jQuery中$.grep() 过滤函数 数组过滤
Nov 22 Javascript
Node.js 异步异常的处理与domain模块解析
May 10 Javascript
vue-cli + sass 的正确打开方式图文详解
Oct 27 Javascript
微信小程序发送短信验证码完整实例
Jan 07 Javascript
生产制造追溯系统之在线打印功能
Jun 03 Javascript
vue页面引入three.js实现3d动画场景操作
Aug 10 Javascript
Vue中引入svg图标的两种方式
Jan 14 Vue.js
Javascript的一种模块模式
Sep 08 #Javascript
jQeury淡入淡出需要注意的问题
Sep 08 #Javascript
jQuery之浮动窗口实现代码(两种方法)
Sep 08 #Javascript
Jquery ThickBox插件使用心得(不建议使用)
Sep 08 #Javascript
jquery的Tooltip插件 qtip使用详细说明
Sep 08 #Javascript
jquery的Theme和Theme Switcher使用小结
Sep 08 #Javascript
复制小说文本时出现的随机乱码的去除方法
Sep 07 #Javascript
You might like
怎么样可以把 phpinfo()屏蔽掉?
2006/11/24 PHP
php5新改动之短标记启用方法
2008/09/11 PHP
ajax php传递和接收变量实现思路及代码
2012/12/19 PHP
Code:loadScript( )加载js的功能函数
2007/02/02 Javascript
js实现运行代码需要刷新的解决方法
2007/08/18 Javascript
javascript 图片上一张下一张链接效果代码
2010/03/12 Javascript
HTML页面滚动时获取离页面顶部的距离2种实现方法
2013/09/05 Javascript
浅析JavaScript中的同名标识符优先级
2013/12/06 Javascript
2种jQuery 实现刮刮卡效果
2015/02/01 Javascript
js实现同一页面多个运动效果的方法
2015/04/10 Javascript
JS实现可拖曳、可关闭的弹窗效果
2015/09/26 Javascript
jquery ajax结合thinkphp的getjson实现跨域的方法
2016/06/06 Javascript
AngularJS使用ng-repeat指令实现下拉框
2016/08/23 Javascript
Node.js利用Net模块实现多人命令行聊天室的方法
2016/12/23 Javascript
JS实现下拉菜单列表与登录注册弹窗效果
2017/08/10 Javascript
微信小程序功能之全屏滚动效果的实现代码
2018/11/22 Javascript
JAVA面试题 static关键字详解
2019/07/16 Javascript
JS实现点击发送验证码 xx秒后重新发送功能
2019/07/30 Javascript
Vue 实现显示/隐藏层的思路(加全局点击事件)
2019/12/31 Javascript
Node.js API详解之 readline模块用法详解
2020/05/22 Javascript
在Vue里如何把网页的数据导出到Excel的方法
2020/09/30 Javascript
如何用Python合并lmdb文件
2018/07/02 Python
Python数据预处理之数据规范化(归一化)示例
2019/01/08 Python
用python写一个定时提醒程序的实现代码
2019/07/22 Python
python支付宝支付示例详解
2019/08/22 Python
pytorch中index_select()的用法详解
2021/01/06 Python
css3 旋转按钮 使用CSS3创建一个旋转可变色按钮
2012/12/31 HTML / CSS
台湾深度自由行旅游平台:Tripbaa趣吧
2017/10/10 全球购物
奥地利手表、香水、化妆品和珠宝购物网站:Brasty.at
2021/01/17 全球购物
自考毕业生自我鉴定
2013/11/04 职场文书
电子信息工程专业求职信
2014/06/28 职场文书
党支部对照检查材料
2014/08/25 职场文书
2014年涉外离婚协议书范本
2014/11/20 职场文书
乡镇一岗双责责任书
2015/01/29 职场文书
《实心球》教学反思
2016/02/23 职场文书
MySQL8.0升级的踩坑历险记
2021/11/01 MySQL