Javascript 如何使按键事件在JS中只触发一次
当我按住按钮时,如何防止函数move()被多次触发?我希望它只发射一次,即使用户按下了键Javascript 如何使按键事件在JS中只触发一次,javascript,eventhandler,onkeypress,Javascript,Eventhandler,Onkeypress,当我按住按钮时,如何防止函数move()被多次触发?我希望它只发射一次,即使用户按下了键 function pushbtn(event) { var pressBtn = event.keyCode; //Move to the right if(pressBtn==100) { move(1933.67); } //Move to the left else if(pressBtn==113) {
function pushbtn(event)
{
var pressBtn = event.keyCode;
//Move to the right
if(pressBtn==100)
{
move(1933.67);
}
//Move to the left
else if(pressBtn==113)
{
move(-1933.67);
}
}
document.addEventListener('keypress', pushbtn);
document.addEventListener('keyup', releasebtn);
dmaurolizer可以很好地控制所有键盘事件。您可以为事件提供回调函数。keydown
事件发送可选的isRepeat
参数,以便您可以忽略自动重复。下面是一个在视频游戏中使用该功能进行推力控制的示例:
var my_combos = listener.register_many([
{
"keys" : "up",
"on_keydown" : function(e, num, isRepeat) {
if (isRepeat) return ;
thrust = 0.1;
},
"on_keyup" : function() {
thrust = 0;
}
}
]);