有没有办法暂时禁用事件监听器?
就我而言,我有一个第三方库(不是以 jQuery 为中心的),它使用addEventListener/attachEvent在元素上创建 mouseover/mouseout 事件。
在某些情况下,另一个事件会在不同的元素上触发,我需要禁用这些事件侦听器。到目前为止,我的解决方案是简单unbind
的 mouseover/mouseout。这通常可以正常工作,因为该事件通常会导致页面刷新。
但是,有时会发生错误(想想验证错误),导致页面不刷新,我需要重新附加 mouseover/mouseout 事件侦听器。
有用的信息
可能值得一提的是,因为 mouseover/mouseout 事件侦听器是在第三方库中创建和附加的,所以我不能简单地将事件分配给一个变量并以这种方式绑定/取消绑定它(AFIK 是最好的方法)。
更新
我本来问
jQuery中有没有办法让已经分配给对象的事件监听器?
从那以后,我发现无法访问 addEventListener/attachEvent 分配的事件:访问在 JavaScript 中使用 attachEvent() / addEventListener() 添加的事件