首先来看一段 html 代码:
03 | < meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" /> |
04 | < title >Firefox 提示event is not defined错误的解决办法</ title > |
08 | < script language = "javascript" > |
09 | document.onkeydown=function mykeyDown(){ |
10 | if(event.keyCode==13){alert('oh my www.phpernote.com');} |
以上 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 代码稍作处理。
1 | document.onkeydown= function mykeyDown(e){ |
3 | if (e.keyCode==13){alert( 'oh my www.phpernote.com' );} |
ok,至此 Firefox 提示 event is not defined 错误的问题得到解决。