我的代码在 IE9/IE10、FF、Chrome 和 Opera 上运行没有问题,但在旧版 Internet Explorer 上没有处理键盘输入。
我有以下用于处理事件的代码。它应该只在按下新按钮时触发。
lastEvent = void 0;
heldKeys = {};
window.onkeydown = function(event) {
if (lastEvent && lastEvent.keyCode === event.keyCode) {
return;
}
lastEvent = event;
heldKeys[event.keyCode] = true;
switch (event.which) {
case 80:
return myamp.userInput("positiv");
case 81:
return myamp.userInput("negativ");
}
};
window.onkeyup = function(event) {
lastEvent = null;
return delete heldKeys[event.keyCode];
};
最佳答案
您需要绑定(bind)到文档,而不是窗口。
window.onkeyup = function(event) {
window.onkeydown = function(event) {
需要
document.onkeyup = function(event) {
document.onkeydown = function(event) {
关于javascript - onkeydown 和 onkeyup 事件在 Internet Explorer 8 上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16399150/