所以,我有一个 Keydown 组合可以在我的表单的一部分中的 div 之间移动,但是在第一次使用该组合之后,我只能按 ALT 键(键码 18)并且它同时运行函数中的两个 if 语句,因此两次调用我的另一个函数。
它应该在输入 if 之前检查第二个 keydown 事件,或者至少这是我所相信的。
是否有一些清除我需要做的 keydown 命令,或者重置监听 keydown 事件的方法?
var keys = [];
document.onkeydown = function(evt){
var key = evt.keyCode;
keys[key] = true;
if(keys[18] && keys[78]){
NewFocus('#Notes');
console.log("Notes");
}
if(keys[18] && keys[67]){
NewFocus('#Callers');
console.log("Callers");
}
return false;
}
function NewFocus(newNav)
{
$('.navActive').hide().removeClass('navActive');
console.log("made it to New Focus event.");
var id = $(newNav);
console.log("This is the id " + $(id));
$(id).show().addClass('navActive');
return false;;
}
顺便说一句,我在 Safari 和 Chrome 中运行它,你可以看到只看控制台会发生什么。
我一定错过了什么,但不知道是什么。