Deep BlueVBScriptWMIPHPC语言JavaScriptWindows API路由器Windows函数Python | 火狐(FireFox)中的onkeydown事件昨天在Kaisir.Wang的文章里留言,我在输入C++的大写字母C时习惯性的按下了Shift+c,竟然弹出了个Hello World窗口。按照他的回复,这是他博客里的彩蛋。汗,一点也不好玩。 然后我把那段JavaScript代码找出来了,如下: document.onkeydown=onkey; function onkey(){ if ((event.shiftKey)&&(event.keyCode==67)) alert("Hello World!"); } 他后面又回复说这代码在火狐下无效,于是我Google了一下,原来是因为onkeydown事件在IE和FireFox的实现不一样。
IE用event.keyCode返回按下的按键,而Netscape/Firefox/Opera用的是event.which。 原因已找到,把代码稍微修改一下: document.onkeydown = function(e) { e = e ? e : window.event; var keyCode = e.which ? e.which : e.keyCode; if(e.shiftKey && keyCode == 67) alert("Hello World!"); } 我还专门装了个FireFox测试,通过。 参考链接:onkeypress Event |