所以我有以下内容:
document.onkeydown = function(e) {
e = e || window.event;
if (e.keyCode == 119) {
if (currentMode == 3) {
currentMode = 0;
} else {
currentMode = currentMode++;
}
switchMode(currentMode);
}
};
我尝试了document
,body
和press/down/up
的几种组合,似乎都没有效果。更糟糕的是,代码(不是这个,但是前一个迭代)工作,直到我删除了某个元素。
现在它要么运行一次,要么不再检测到按键,或者按键从未被识别开始。
如有必要,我会在整个页面中编辑。
答案 0 :(得分:1)
这不是正确的增量:
currentMode = currentMode++;
您的currentMode
永远不会增加,因为它会分配相同的值。
将其更改为:
currentMode++;
它会起作用(keyCode
119 F8 ):
var currentMode = 0;
document.onkeydown = function(e) {
e = e || window.event;
if (e.keyCode == 119) {
if (currentMode == 3) {
currentMode = 0;
} else {
currentMode++;
}
switchMode(currentMode);
}
};
function switchMode(mode) {
document.getElementById('mode').innerText = mode;
}
Current mode: <span id="mode">0</span>