【问题标题】:jQuery Event Handler method - Mixing pairsjQuery 事件处理程序方法 - 混合对
【发布时间】:2016-01-19 10:36:44
【问题描述】:

jQuery 事件方法成对出现 - on()off()live()die()bind()unbind()

我的问题是,我们可以混合成对吗?例如使用on() 附加一个事件并使用unbind() 删除它?

文档向我建议最好使用相应的方法,bind()unbind() http://api.jquery.com/unbind/,但它并没有明确说你不能混合它们。 在我看来,live()/die() 可以与on()/off() 互换,而bind()/unbind() 可以与click()/change() 等速记方法互换。

谁能解释一下事件是如何附加、引用和存储的? 据我了解,jQuery 事件存储在一个数组中,可以通过obj.event("name") 引用。 on()/off()bind()/unbind() 使用不同的数组吗?

【问题讨论】:

    标签: javascript jquery events event-handling jquery-events


    【解决方案1】:

    您可以使用.unbind() 取消绑定在.on() 注册的事件,反之亦然。在这里查看:http://codepen.io/anon/pen/KVyZOL

    但使用 .on() 和 .off() 是绑定和解除绑定事件的首选方式:

    使用 .bind() 附加的事件处理程序可以使用 .unbind() 删除。 (从 jQuery 1.7 开始,.on() 和 .off() 方法优先于 在元素上附加和删除事件处理程序。)

    --

    如何附加、引用和存储事件?

    jQuery 根据浏览器支持使用 addEventListener() 和 attachEvent() 附加事件。 check jQuery source code

    正如你所说的 jQuery 事件:

    存储在一个数组中,可以通过 obj.event("name").

    【讨论】:

      猜你喜欢
      • 2013-06-26
      • 2022-01-24
      • 2014-09-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多