jquery中的bind,live,delegate,on的区别

bind方法

bind:将事件类型和事件处理函数直接注册到被选的DOM元素中

优点:

(1)适用于各种浏览器

(2)连接事件处理函数非常方便便捷

(3)对于简单的id选择器,使用bind方法不仅可以很快的连接事件处理函数,而且当事件被触发时,事件处理函数几乎马上被调             用。

(4)可以使用.click(),.hover()等简写方法来连接事件处理函数

 缺点

(1)只能绑定已存在的元素,不可以动态的绑定元素

(2)当操作大量的匹配元素时会有性能方面的问题

live方法

live:使用事件委派来实现事件绑定

优点:

(1)所有事件只会注册一次,不想bind那样进行多次注册

(2)可以动态绑定元素(未来的元素也也可以用)

(3)可以在文档加载完之前连接事件处理函数,,节省时间

缺点:

(1)在jquery1.7以后被弃用

(2)所做的匹配操作基本无用,因为真实事件被注册到document元素上

(3)无法使用event.stopPropogation()方法,由于事件绑定在document元素上

delegate方法

delegate:与live类似,当事件不是绑定在document上,而是指定的元素上

优点:

(1)可以选择将选择器或事件附加到指定的元素

(2)支持链式操作

(3)动态的绑定元素

(4)可以在文档加载完之前连接事件处理函数

缺点:

(1)操作大量时会出现性能问题

on方法

on:将监听事件绑定到指定元素上

优点:

(1)使各种事件绑定方法一致

(2)jquery源码中bind,live,delegate方法实际上是调用了此方法,因此简化了query代码,

缺点:

(1)给人带来一些疑惑,因为方法的实际执行方式将根据你如何调用方法而改变

推荐文章:https://www.jb51.net/article/120018.htm

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值