2011-12-18 158 views
-3

如何取消打开此项,以及如何重新委托(开/关)...不影响'a'中的其他事件处理程序。如何取消点击虚假?

$(document).ready(function() { 
    $('document').delegate('a', 'click' function(){return false;}); 
}); 
+1

http://api.jquery.com/undelegate/ –

+2

-1不打扰阅读文档。 –

+0

这是用于做问题,所有问题都可以使用文档解决,那么什么是stackoverflow?我讨厌这个人和这个评论! –

回答

1

做这样的事情,我使用了click.myEvent点击事件中创建自己的namespace,所以这种方式只会是获取生成和清除.myEvent事件。

Deletate

$(document).ready(function() { 
    $('document').delegate('a', 'click.myEvent', function(){return false;}); 
}); 

Undelegate:

$(document).ready(function() { 
    $('document').undelegate('a', 'click.myEvent'); 
}); 
2

随着事件委托,如果出现将是定期切换和关闭,做最简单的事情就是让选择,你改变了一个类需要的时候。

$(document).ready(function() { 
    $('document').delegate('a.clickable', 'click' function(){return false;}); 
}); 

只需卸下clickable类禁用元素,并在其重新添加到启用。

无需重复取消绑定/绑定委托处理程序。