【发布时间】:2017-12-13 15:03:43
【问题描述】:
Firefox 缺少 window.event 让我措手不及……即
<script>
function clicked()
{
console.log(event);
}
</script>
<div onclick = "clicked()">Whatever</div>
几乎可以在所有现代浏览器中使用,但“事件”在 Firefox 中是未定义的,我们必须在其中显式编写
<script>
function clicked(event)
{
console.log(event);
}
</script>
<div onclick = "clicked(event)">Whatever</div>
是否有任何可行的解决方法来访问 Firefox 中的事件对象而不必将其显式作为函数参数?
【问题讨论】:
-
你为什么要这样做?
window.event完全不标准。 -
??您已经有了“解决方法”,将事件对象传递给处理程序。全局事件对象不是标准的,一开始就不应该使用。
-
有时公司继承的代码只是想通过黑客攻击保持几乎没有功能,而完全重写是并行完成的。
-
@AlexanderOMara 我不太同意这里重复的关闭原因。最初的问题询问原因,而这个问题要求解决方法。
-
是的,我找到了“为什么”的问题,但它没有提供解决方法(我认为传播不良做法只会帮助在浏览器中保持丑陋,但有时它是业务类型的必要弊端) .确实不是重复的。
标签: javascript firefox events