大多数工具类都会提供标准入口和快捷方式,jquery事件模型也不例外
jquery1.0标准入口
属于jquery工具方法,通过$.event可查看
一个标准的事件大致就会经历这样的流程
如果对事件的传播进一步进行代理就还需要一个fix,重新制作代理以及取消默认行为
jquery1.0快捷入口
通过初始化方式,将标准工具方法,转换为实例方法而后
再一次产生更加快捷的方法,至此,通过jquery实例方法有2中调用方式
1.$().bind(type,fn)
2.$().onclick(fn)
在1.0中,jquery事件通过dom进行fns的缓存而非闭包,dom会被无数次的遍历,而且难以被删除(内存溢出),总之,它被证明不是一种高效的方式
jquery1.9标准入口
除了解决性能问题外,jquery不断的吸取各种新鲜的概念比如代理,统一接口,开关...
live与die(jquery1.3)-->利用传播性质,进行事件的代理(绑定在document)
delegate与undelegate(1.42)-->允许制定代理对象(live与die的增强封装)
on与off(jquery1.7)-->统一事件接口(取代bind,live,one,delegate)
其他...
时间: 2024-10-13 15:05:52