【发布时间】:2022-07-08 01:02:22
【问题描述】:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Pew Pew</title>
</head>
<body>
<canvas id="gameCanvas" height="800px" width="1000px"></canvas>
<div class="button-div">
<button id="atkUp" onclick="player.attackSpeedUp()">1 Atk Speed - 1c</button>
<button id="dmgUp" onclick="player.damageUp()">1 Damage - 1c</button>
<button id="multishotUp" onClick="player.multishotUp()">1 Multi-Shot - 1c</button>
<button id="moveSpeedUp" onClick="player.moveSpeedUp()">1 Move Speed - 1c</button>
<button id="armorUp" onclick="player.armorUp()">1 Armor - 1c</button>
<p>UPGRADES</p>
</div>
</body>
</html>
document.addEventListener("keypress", (event) =>{
if(event.keyCode == 32){
player.shoot();
}
}, false);
我的问题是,当我点击任何升级按钮(.button-div 中的任何按钮)时,当我按下空格键时,它会激活(“点击”)我按下的最后一个按钮并且不会触发我的事件监听器.有没有办法以编程方式取消最近按钮的焦点和/或阻止按钮抢走我的空格键输入。
【问题讨论】:
-
防止默认。
标签: javascript html input event-listener