Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Gamepad

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⁩.

* Some parts of this feature may have varying levels of support.

Das Gamepad-Interface der Gamepad API definiert ein einzelnes Gamepad oder einen anderen Controller und ermöglicht den Zugriff auf Informationen wie Tastendrücke, Achsenpositionen und ID.

Ein Gamepad-Objekt kann auf zwei Arten zurückgegeben werden: über die gamepad-Eigenschaft der gamepadconnected und gamepaddisconnected-Events oder durch den Zugriff auf eine beliebige Position im Array, das von der Methode Navigator.getGamepads() zurückgegeben wird.

Hinweis: Die Unterstützung von Gamepad-Funktionen variiert je nach Kombination von Plattformen und Controllern. Selbst wenn der Controller eine bestimmte Funktion unterstützt (zum Beispiel haptisches Feedback), muss die Plattform diese Funktion für diesen Controller nicht unterstützen.

Instanz-Eigenschaften

Gamepad.axes Schreibgeschützt

Ein Array, das die Steuerungen mit Achsen auf dem Gerät darstellt (z.B. analoge Daumensticks).

Gamepad.buttons Schreibgeschützt

Ein Array von gamepadButton-Objekten, die die auf dem Gerät vorhandenen Tasten darstellen.

Gamepad.connected Schreibgeschützt

Ein boolescher Wert, der angibt, ob das Gamepad noch mit dem System verbunden ist.

Gamepad.displayId Schreibgeschützt Veraltet Nicht standardisiert

Gibt die VRDisplay.displayId eines zugehörigen VRDisplay zurück (falls relevant) — das VRDisplay, dessen angezeigte Szene vom Gamepad gesteuert wird.

Gamepad.hand Schreibgeschützt Experimentell

Ein Enum, das definiert, in welcher Hand der Controller gehalten wird oder höchstwahrscheinlich gehalten werden würde.

Gamepad.hapticActuators Schreibgeschützt Experimentell

Ein Array, das GamepadHapticActuator-Objekte enthält, die jeweils die auf dem Controller verfügbare haptische Hardware repräsentieren.

Gamepad.vibrationActuator Schreibgeschützt

Ein GamepadHapticActuator-Objekt, das die haptische Hardware auf dem Controller repräsentiert.

Gamepad.id Schreibgeschützt

Ein String, der Identifizierungsinformationen über den Controller enthält.

Gamepad.index Schreibgeschützt

Ein Integer, der automatisch inkrementiert wird, um für jedes derzeit mit dem System verbundene Gerät eindeutig zu sein.

Gamepad.mapping Schreibgeschützt

Ein String, der angibt, ob der Browser die Steuerungen auf dem Gerät zu einem bekannten Layout umgemappt hat.

Gamepad.pose Schreibgeschützt Experimentell

Ein GamepadPose-Objekt, das die Informationen über die Pose eines WebVR-Controllers darstellt (z.B. seine Position und Ausrichtung im 3D-Raum).

Gamepad.timestamp Schreibgeschützt

Ein DOMHighResTimeStamp, der den letzten Zeitpunkt darstellt, zu dem die Daten für dieses Gamepad aktualisiert wurden.

Beispiel

js
window.addEventListener("gamepadconnected", (e) => {
  console.log(
    "Gamepad connected at index %d: %s. %d buttons, %d axes.",
    e.gamepad.index,
    e.gamepad.id,
    e.gamepad.buttons.length,
    e.gamepad.axes.length,
  );
});

Spezifikationen

Specification
Gamepad
# gamepad-interface
Gamepad Extensions
# partial-gamepad-interface

Browser-Kompatibilität

Siehe auch