本文介绍了如何取消绑定特定的事件处理程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
代码:
$('#Inputfield').keyup(function(e)
{
if(e.which == 13)
{
functionXyz();
}
else
{
functionZyx();
}
});
$(document).keyup(function(exit) {
if (exit.keyCode == 27) { functionZzy(); }
});
问题:如何去掉keyCode == 27的keyup事件处理器,保持其他$(document).keyup事件处理器不变?
Question: How to remove the keyup event handler of keyCode == 27 and keep the other $(document).keyup event handlers intact?
推荐答案
您必须使用命名函数,以便在调用 .unbind()
,像这样:
You have to use a named function so you can reference that specific handler when calling .unbind()
, like this:
function keyUpFunc(e) {
if (e.keyCode == 27) { functionZzy(); }
}
$(document).keyup(keyUpFunc);
然后在解除绑定时:
$(document).unbind("keyup", keyUpFunc);
这篇关于如何取消绑定特定的事件处理程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!