美文网首页
什么是事件委托以及live on delegate之间的关系

什么是事件委托以及live on delegate之间的关系

作者: hbhey | 来源:发表于2018-06-04 10:36 被阅读12次

首先什么是事件委派?

事件委派(委托):事件委托就是利用冒泡的原理,把事件加到父元素或祖先元素上,触发执行效果。

当页面同步加载时,会添加事件。有时数据是由异步加载,同步无法给不存在(刚开始)的元素添加事件。此时我们可以在一开始就存在的**父元素**上添加事件,再通过父元素在触发时找子元素。

事件委托优点

提高JavaScript性能。事件委托可以显著的提高事件的处理速度,减少内存的占用。

Jquery事件委托的写法?

$(父元素).on('click','子元素选择器',function(){

   //代码块 

});

live on delegate之间的区别

(1)live 把事件委托交给了document(根节点),document 向下去寻找符合条件的元素(), 不用等待document加载结束也可以生效。(jquery1.7 以上被废除)

(2)delegate可指定事件委托对象,相比于live性能更优,直接锁定指定选择器;

(3)on事件委托对象选填,如果不填,即给对象自身注册事件,填了作用和delegate一致。

(4)band只能给调用它的时候已经存在的元素绑定事件,不能给未来新增的元素绑定事件,存在局限性。

在jQuery 1.7中 .bind()、.live()和.delegate() 统一用on代替,解决混乱问题。

$(elems).on(events, selector, data, fn);

$(elems).off(events, selector, fn);//解除事件

转载:https://blog.csdn.net/xuxu_qkz/article/details/78343352

相关文章

  • 什么是事件委托以及live on delegate之间的关系

    首先什么是事件委派? 事件委派(委托):事件委托就是利用冒泡的原理,把事件加到父元素或祖先元素上,触发执行效果。 ...

  • 什么是事件委托以及live on delegate之间的关系

    一、首先什么是事件委派?事件委派(委托):事件委托就是利用冒泡的原理,把事件加到父元素或祖先元素上,触发执行效果。...

  • jQuery的事件委托方法bind 、live、delegate

    jQuery的事件委托方法bind 、live、delegate、on之间有什么区别? (1)、bind 【jQu...

  • jQuery 事件委托on、bind、live、delegate

    http://www.jb51.net/article/57827.htm bind: 3.0- 表格中要绑定单击...

  • C# 高级语言总结

    后续 1 C# 委托 委托(Delegate)特别用于实现事件和回调方法。所有的委托(Delegate)都派生自 ...

  • 6-jQuery事件操作

    delegate(), undelegate() 事件委托把点击事件加到了ul身上, 利用冒泡原理 阻止事件委托 ...

  • 关于协议和继承

    本篇要讨论的是协议和继承之间的关系,但为了方便理解,先从协议(Protocol)、委托(Delegate)和类别(...

  • delegate

    什么是 delegate delegate是委托模式.委托模式是将一件属于委托者做的事情,交给另外一个被委托者来处...

  • 委托

    委托(delegate)特别用于实现事件和回调方法。 所有委托都派生于system.Delegate类。 创建一个...

  • jQuery事件

    jQuery事件是DOM事件的封装,同时支持自定义的扩展。绑定事件:bind、on、live、delegate、k...

网友评论

      本文标题:什么是事件委托以及live on delegate之间的关系

      本文链接:https://www.haomeiwen.com/subject/bueesftx.html