jQuery事件处理程序方法 - 混合对

时间:2016-01-19 10:36:44

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

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 on()/ off()和bind()/ unbind()使用不同的数组吗?

1 个答案:

答案 0 :(得分:1)

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

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

  

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

-

  

如何附加,参考和存储事件?

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

正如你所说的jQuery事件:

  

存储在一个数组中,可以通过   obj.event( “名称”)。