我想知道是否有办法“扔掉”,如果这是正确的术语,或者当它发生时忽略鼠标事件。
例如,
假设我有一个绑定到对象的mouseenter,并且我附加了一个特定的处理程序。有没有办法忽略该对象上的某些mouseenter事件,以便在这些实例中不调用处理程序?
注意:我意识到您可以使用'if'语句执行此操作,但假设我无权访问处理函数。
答案 0 :(得分:2)
只需在处理程序中放置一个if
。
var fire = true;
$('#something').click(function() {
if (!fire)
return;
// do fun stuff
});
答案 1 :(得分:0)
是的,只需使用全局“标志”即可。
例如,在代码之上声明全局标志,如下所示:
var _ignoreMouseEnterOnce = false;
现在你的事件处理程序有这个:
if (_ignoreMouseEnterOnce) {
_ignoreMouseEnterOnce = false;
return;
}
在任何地方举起旗帜:
_ignoreMouseEnterOnce = true;