我使用foloowing代码跟踪关键事件
oEvent=window.event || oEvent; iKeyCode=oEvent.keyCode || oEvent.which;alert(iKeyCode);
它在firefox中给我提醒,但不能在IE和chrome中.它给我所有其他钥匙圈字符,但不是esc键和箭头键.
如何使用javascript检测chrome和IE中的esc键和箭头键?
解决方法
你真的不需要JQuery,但它确实使你的代码更短.
您将不得不使用keyDown事件,keyPress将不会在旧版本的IE中用于箭头键.
这里有一个完整的教程,您可以使用,请参阅靠近页面底部的箭头键的示例:
http://www.cryer.co.uk/resources/javascript/script20_respond_to_keypress.htm
这是我使用的一些代码,有点简化,因为我不得不处理具有缓冲的重复按键:
document.onkeydown = function(event) { if (!event) event = window.event; var code = event.keyCode; if (event.charCode && code == 0) code = event.charCode; switch(code) { case 37: // Key left. break; case 38: // Key up. break; case 39: // Key right. break; case 40: // Key down. break; } event.preventDefault(); };