首先来看一段 html 代码:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Firefox 提示event is not defined错误的解决办法</title>
</head>
<body>
<script language="javascript">
document.onkeydown=function mykeyDown({
if(event.keyCode==13{alert('oh my www.feishuai.vip';}
return;
}
</script>
</body>
</html>
以上 js 代码的意思是你在当前页面点击 Enter 键的话,都会弹出一个警告框,警告内容自己看。这不是重点。
这段代码在 IE 中运行是正常的,但在Firefox中却会报 "event is not defined" 的错误!Firefox 报这个错误的原因是因为在 Firefox 使用的事件对象模型是W3C Dom,不同于IE Dom。Firefox DOM中并无 event,因为Firefox下不能通过 window.event 来获取 event 的对象。那么该如何解决呢?
经过多次测试,得出采用以下方法解决,可以同时兼容 IE 和 Firefox 的event 事件。对以上 js 代码稍作处理。
document.onkeydown=function mykeyDown(e{
e=e||event;
if(e.keyCode==13{alert('oh my www.feishuai.vip';}
return;
}
ok,至此 Firefox 提示 event is not defined 错误的问题得到解决。