禁用,启用('点击')

时间:2012-11-07 18:56:27

标签: jquery

如何禁用和启用点击事件。

我尝试过:

$('#web').on('click', function web_function(event){
    event.stopPropagation();
    // execute a bunch of action to preform
});
$('#web').off('click'); // click is succesfully removed
$('#web').on('click'); // doesnt work, i need to redefine the actions to perform

我也试过禁用:

$('#web').unbind('click'); // click is succesfully removed
$('#web').bind('click'); // nok

但这也不起作用......

因此,我想禁用/启用click事件,而无需重新定义要执行的操作。某种切换......(点击/关闭)

如何实现事件以阻止传播?

我该怎么做?

1 个答案:

答案 0 :(得分:14)

只要bind(或rebind),您就需要将处理函数作为参数传递。

在你的情况下,你可以命名你可以用来在你再次重新绑定时传递它的功能..见下文,

var myFunc = function(event){
     event.stopPropagation();
     // execute a bunch of action to preform
}

$('#web').on('click', myFunc); //bind myFunc
$('#web').off('click'); // click is succesfully removed
$('#web').on('click', myFunc); //rebind again