如何取消单击false?

时间:2011-12-18 17:07:50

标签: javascript jquery delegates event-handling

如何解除此问题,以及如何重新委派(开/关)...不影响'a'中的其他事件处理程序。

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

2 个答案:

答案 0 :(得分:2)

使用事件委托,如果要定期打开和关闭,最简单的方法是使选择器成为您需要时更改的类。

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

只需删除clickable类即可禁用某个元素,然后将其重新添加到启用状态。

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

答案 1 :(得分: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' ); 
});