|
1
|
需要重新绑定事件时,可以先把事件off掉,然后重新on |
|
1
2
3
4
5
6
7
8
|
function foo()
{ xxxx;}$("#a").on("click",
foo);//需要重新绑定事件时,可以先把事件off掉,然后重新on$("#a").off("click",
foo).on("click",
foo);//
其实这样子有些必须要传递函数的方法是不行的,如$("#a").off("click",foo,function(e){});
解决方案:
在会重复绑定该事件的方法中做以下判断:
if($("#a").__ta.click instanceof Object) continue;
也就是说如果一个元素已经绑定了该事件,你在这个元素的下级就能通过调试工具查看到这个事件,我用的是jsPlumb
所以就是.__ta.click,如果这个元素已经绑定了,那么.__ta.click就是一个Object,否则为undefined,所以通过
判断就可以阻止程序的再次绑定,如绑定了多次,效果如:一旦触发事件,事件函数会被多次执行。
|
421

被折叠的 条评论
为什么被折叠?



