例如,我有一个元素,一个 div。并将事件“点击”附加到它。在 jQuery 中,它将是:
$('#myDiv').click(function(){
$(".class1").show();
})
现在,我想分配一个新函数“myDiv #”来替换旧函数。我这样做:
$('#myDiv').click(function(){
$(".class23").hide();
})
但是当我在 div 上运行'click'时,执行了我分配给这个疑惑开头的函数。
问题:如何去掉元素点击事件后运行的函数? (不要使用新的点击事件重新创建元素...)
最佳答案
你想要.unbind
.
您可以删除所有以前绑定(bind)的函数:
$('#myDiv').unbind('click');
或者如果你只想解绑一个特定的函数:
var show = function() {
$(".class1").show();
};
$('#myDiv').click(show);
然后:
$('#myDiv').unbind('click', show); // unbind first function
$('#myDiv').click(function() { // bind second function
$(".class23").hide();
});
注意 .click(func)
只是 .bind('click', func)
的快捷方式。
关于JavaScript/jQuery - 重用元素的事件 'Click',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7939354/