Gamepad: buttons-Eigenschaft
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since März 2017.
Die buttons-Eigenschaft des Gamepad Interface gibt ein Array von GamepadButton-Objekten zurück, die die auf dem Gerät vorhandenen Tasten darstellen.
Jeder Eintrag im Array ist 0, wenn die Taste nicht gedrückt ist, und ungleich null (typischerweise 1.0), wenn die Taste gedrückt ist.
Wert
Ein Array von GamepadButton-Objekten.
Beispiele
Je nach Art der Taste müssen wir auf die Eigenschaften GamepadButton.value oder GamepadButton.pressed zugreifen. Dieses
Beispiel unterstützt beides:
js
function gameLoop() {
const gp = navigator.getGamepads()[0];
if (gp.buttons[0].value > 0 || gp.buttons[0].pressed) {
b--;
} else if (gp.buttons[1].value > 0 || gp.buttons[1].pressed) {
a++;
} else if (gp.buttons[2].value > 0 || gp.buttons[2].pressed) {
b++;
} else if (gp.buttons[3].value > 0 || gp.buttons[3].pressed) {
a--;
}
ball.style.left = `${a * 2}px`; // ball is a UI widget
ball.style.top = `${b * 2}px`;
requestAnimationFrame(gameLoop);
}
Spezifikationen
| Specification |
|---|
| Gamepad> # dom-gamepad-buttons> |