1
我正在製作HTML5遊戲。當用戶按下這個鍵(讓我們說z)角色攻擊。但是,目前在我的代碼中,用戶只能持有z以便角色無限期地攻擊。如何防止Javascript長按?
我需要實現一個代碼,以防止發生這種「長按」。換句話說,如果用戶持續持有z,角色最終會停止攻擊,所以用戶必須繼續攻擊z而不是僅僅按住鍵。
我正在製作HTML5遊戲。當用戶按下這個鍵(讓我們說z)角色攻擊。但是,目前在我的代碼中,用戶只能持有z以便角色無限期地攻擊。如何防止Javascript長按?
我需要實現一個代碼,以防止發生這種「長按」。換句話說,如果用戶持續持有z,角色最終會停止攻擊,所以用戶必須繼續攻擊z而不是僅僅按住鍵。
如果您使用keypress
或事件,請嘗試使用keyup
來代替。
你可以實現一個只會觸發一次的標誌,除非重置。
var pressed = false;
window.addEventListener("keydown",()=>{
if(!pressed){
pressed = true;
//Do thing
}
}
window.addEventListener("keyup",()=>{
pressed = false;
}
使用'keyup'呢? – tanmay
您可以用'keydown'所以在這種情況下,用戶將不得不一次又一次 – warl0ck
按鍵請出示你如何捕捉按鍵事件當前的代碼。最好還是提供一個[MCVE]。 –