我正在使用下面的代码来跟踪关键事件
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();
};
关于javascript - 如何在Chrome和IE中跟踪箭头键?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6226859/