Gamepad: buttons-Eigenschaft
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit März 2017 browserübergreifend verfügbar.
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
| Spezifikation |
|---|
| Gamepad> # dom-gamepad-buttons> |