我在使用Firefox的window.event时遇到了麻烦 - 它在chrome中运行得很好。这是我的代码:
private myFunction(event:any) {
if(window.event.target.outerHTML.indexOf('point') > -1){
return;
};
错误是:
window.event未定义
我已经查看了一些类似的问题,并尝试了以下哪些方法无效:
private myFunction(event:any) {
var e = event || window.event;
if(e.target.outerHTML.indexOf('point') > -1){
return;
};
}
答案 0 :(得分:0)
这取决于您如何将事件附加到dom元素。您不能依赖回调中的事件参数,因为旧浏览器(< = IE8)在执行此操作时存在一些差异,此外,您已经发现Firefox的工作方式也略有不同。
您可以在此处阅读有关正确的dom事件附件的内容 https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.addEventListener 还有一个例子来实现对IE8的支持,这不是太糟糕。
但总的来说,我建议使用某种为你做事件处理的库。 因为这非常复杂并且很容易出错,所以这些库非常有用(不仅仅是在这方面)......
第一个选项是JQuery,但还有很多其他的JavaScript库。当然,您可以在Typescript中使用它们并下载相应的输入法。