如何禁用和启用点击事件。
我尝试过:
$('#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事件,而无需重新定义要执行的操作。某种切换......(点击/关闭)
如何实现事件以阻止传播?
我该怎么做?
答案 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