我正在尝试使用javascript从用户那里获取密钥并将其存储在javascript对象中 即当我按'A'时,应将1添加到myJSON [65] 以下代码可以很好地工作,但如果用户长按一个键,它会将其检测为多次按键。我不是那样的。有更好的方法吗????
var myJSON={65:[],83:[],68:[],70:[],71:[]};
window.onkeydown=function(e){
console.log(myJSON);
myJSON[parseInt(e.keyCode)].push(1);
}
提前完成..
答案 0 :(得分:2)
试试这个:
var keyStopper=false;
window.onkeydown=function(e){
if(keyStopper)return e.keyCode;
keyStopper=true;
console.log(myJSON);
myJSON[parseInt(e.keyCode)].push(1);
}
window.onkeyup = function(e){
keyStopper=false;
}
答案 1 :(得分:0)
尝试键盘:
var myJSON={65:[],83:[],68:[],70:[],71:[]};
window.onkeyup=function(e){
console.log(myJSON);
myJSON[parseInt(e.keyCode)].push(1);
}
答案 2 :(得分:-2)
仅使用keydown和keyup事件。它们的名字就像keydown一样工作:按下键时的单个事件。 keyup - 释放密钥时的单个事件。