ゲームパッド API を少し試しています。ボタンが押されると、ボタンが離されるまで常に「起動」されます。これは、ゲームでの実行や射撃などには便利ですが、メニュー内を移動する場合 (たとえば、1 つではなく 16 のメニュー項目を下に移動する場合) には問題があります。
通常のキーボードでは、ボタンの押下がいつ終了したかを確認するために onkeyup/onkeydown を使用します。しかし、ゲームパッド API では、そのようなものは見つかりませんでした。
JS:
var gamepadPressCounter = 0;
function update() {
const gamepads = navigator.getGamepads();
if (gamepads[0].buttons[0].pressed === true) {
gamepadPressCounter++;
}
window.requestAnimationFrame(update);
}
では、gamepadPressCounter を 1 回のプレスで 1 回だけアップさせ、無限回ではない方法を知っていますか?