事件委托 on和delegate的适用区别 jquery
来源:互联网 发布:系统加速软件 编辑:程序博客网 时间:2024/06/05 05:52
事件委托 on和delegate的适用区别 jquery
大家在做关于大数据的dom时候当在每个循环的单模块添加事件的时候会遇到问题:给单模块的内容添加事件。
1.给每一个单模块绑定事件(产生的大量事件绑定,造成大量的事件绑定,性能消耗,而且还需要解绑(IE会泄漏))
2.利用事件委托使用父级原生绑定实现每一个单模块的绑定事件。(例如新浪微博的每个发布人栏目的所有事件)
大部分人都会选择第二种情况,因为他能对于所有子元素(包括后期通过JS生成的元素)所有的事件监测均能有效,且由于不用对多个元素进行事件绑定,能够有效的节省内存的损耗。
当然jquery会做很好的处理。
他从开始到现在一直在升级这个事件委托 live,bind,delegate,on事件。
具体事件绑定之前和事件绑定之后的实现的性能效果可以参考http://www.cnblogs.com/aaronjs/p/3440647.html这里详细的数据提供参考。
这里值得提出的是on,和delegate的使用问题。先看看jquery1.9.1源码
1.delegate的使用说明
2.on的使用说明:
使用这两个事件的时候大家会在使用选择器selector和事件类型type会经常出错,因为传参顺序不同,当看看源码就会明白,其实jquery在使用事件绑定delegate和on在这两个地方做了区分
使用delegate的时候应该是$("div").delegate(selector,type,fn);
使用on的时候应该是$("div").on(type,selector,fn);
纪念曾经不看源码,经常使用出错的delegate和on的事件绑定日子。
阅读全文
0 0
- 事件委托 on和delegate的适用区别 jquery
- jquery的事件委托-bind,live,delegate,on的区别
- jquery live() delegate() on() 事件委托的一些区别
- jQuery事件绑定bind、live、delegate和on的区别
- 关于jquery的事件委托-bind,live,delegate,on的区别发展
- jQuery的事件委托方法bind、live、delegate,on之间的区别
- jQuery事件:bind、delegate、on的区别
- jQuery事件:bind、delegate、on的区别
- jQuery事件:bind、delegate、on的区别
- jQuery事件:bind、delegate、on的区别
- jquery live() delegate() on() 事件委托的一些区别
- jQuery的事件委托方法on、live、delegate之间有什么区别?
- jQuery事件绑定方法bind、 live、delegate和on的区别
- jquery中事件委派代码分析以及jQuery中delegate和on的用法与区别详细解析
- 事件和委托Delegate
- jQuery事件委托( bind() \ live() \ delegate()) [委托 和 绑定的故事]
- jquery中bind,live,delegate和on的区别
- C#的委托(Delegate)和事件(Events)
- python 简单打包
- gazebo
- hibernate配置error1
- Lvs+Ldirectord+Heartbeat
- hbase版本对应的hadoop版本
- 事件委托 on和delegate的适用区别 jquery
- JAVA_编程案例_1!+2!+3!+...+s!=total_打印阶乘之和
- 【PHP进阶学习】——Trait代码复用类
- SQL标准中的四种隔离级别
- 红黑树*
- Dubbox本地 JAR包部署与安装
- u盘使用记录、痕迹删除技巧方法
- 源文件不同后缀hpp.h与.h及.mm等的区别
- Intellij IDEA 4种配置热部署的方法