我有一些简单的代码,例如:
$('#modal-buttons [href*=close]').bind('click.modalClose',function(){
app().modal('close')
});
但是假设我不知道 click.modalClose
将在任何地方绑定(bind),有没有办法销毁所有这些特定绑定(bind),无论元素是什么,而不必执行以下操作?
$('#modal-buttons [href*=close],.someOtherelement,#onemore,.another').unbind('click.modalClose');
最佳答案
要摆脱所有绑定(bind),只需执行以下操作:
$('*').unbind('click.modalClose');
这样就可以得到所有的了。或者,您可以确保绑定(bind)始终通过您自己的 API 进行,然后您可以跟踪哪些元素实际受到影响。 (但是,如果您打算将处理程序与它们所绑定(bind)的所有元素解除绑定(bind),我看不出有什么意义,除非您的页面规模很大并且 $('*')
事情花费的时间太长了。)
关于javascript - 有没有办法删除 jQuery 中的所有命名空间绑定(bind)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4868916/