是否有一种方法可以仅在 event.preventDefault()
被某个事件调用时(由另一个未知函数)运行一个函数。这是一个 jQuery 插件,所以我不知道页面的其他部分可能在做什么。我试过这个:
Event.test = Event.preventDefault;
Event.preventDefault = function () {
alert('Success');
this.test();
}
但它不起作用...只是表现正常,没有错误。
相反,我也希望相反...仅在未调用 event.preventDefault()
时才调用函数。实际上,将功能添加到事件的默认操作。有任何想法吗?这一切有可能吗?
编辑:根据评论,我找到了第一个问题的解决方案:http://jsfiddle.net/nathan/VAePB/9/ .它在 Chrome 中工作(警告 function preventDefault() { [native code] }
,但 IE 警告 undefined
。所以 IE 不会让我定义 Event.prototype .test
,但它会让我重新定义 Event.prototype.preventDefault
。很奇怪。我相信我可以根据这个问题想出解决第二个问题的方法,如果我可以让它在 IE 中工作。
最佳答案
我不确定我是否理解。你不能像this那样使用event.isDefaultPrevented()
吗?
关于javascript - 仅当事件默认被阻止/未被阻止时才运行函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4285976/