如何防止Javascript中的长按?
我正在制作一个HTML5游戏。当用户按下此键(比如z)时,角色将进行攻击。然而,目前在我的代码中,用户只需按住z,角色就可以无限期地攻击如何防止Javascript中的长按?,javascript,Javascript,我正在制作一个HTML5游戏。当用户按下此键(比如z)时,角色将进行攻击。然而,目前在我的代码中,用户只需按住z,角色就可以无限期地攻击 我需要实现一个代码,以防止这种“长按”的发生。换句话说,如果用户一直按住z键,角色最终将停止攻击,因此用户将不得不继续按住z键,而不仅仅是按住键。如果您使用的是按键或按键事件,尝试改用keyup。您可以实现一个只触发一次的标志,除非重置 var pressed = false; window.addEventListener("keydown", ()=>
我需要实现一个代码,以防止这种“长按”的发生。换句话说,如果用户一直按住z键,角色最终将停止攻击,因此用户将不得不继续按住z键,而不仅仅是按住键。如果您使用的是
按键
或按键
事件,尝试改用keyup
。您可以实现一个只触发一次的标志,除非重置
var pressed = false;
window.addEventListener("keydown", ()=>{
if(!pressed){
pressed = true;
//Do thing
}
}
window.addEventListener("keyup", ()=>{
pressed = false;
}
改为使用
keyup
?您可以使用keydown
,因此在这种情况下,用户必须再次按键,并再次显示您当前关于如何捕获按键事件的代码。最好还是提供一个。