Gamepad API

Die Gamepad API ist ein Weg für  Entwickler auf Eingaben eines Gamepads und anderen Spielsteuergeräte in einer einfachen und konsequenten Weise zuzugreifen und darauf zu reagieren. Es enthält drei Schnittstellen, zwei Ereignisse und eine Spezialfunktion, welche verwendet wird, um auf verbindende und trennende Gamepads zu reagieren, um auf andere Informationen des Gamepads selbst zuzugreifen und welche Knöpfe und andere Kontrollelemente gerade gedrückt werden.

Schnittstellen

Gamepad
Repräsentiert ein Gamepad/Spielsteuergerät, dass mit dem Computer verbunden ist.
GamepadButton
Repräsentiert einen Knopf auf einem verbundenen Gamepad.
GamepadEvent
Das Ereignisobjekt, dass Ereignisse auf dem zusammenhängenden Gamepad repräsentativ auslöst.

Experimentelle Gamepad Erweiterungen

GamepadHapticActuator
Repräsentiert Hardware im Steuergeräte welche zur Verfügungstellung von haptischen Feedback für den Nutzer (Falls vefügbar) konzipiert worden ist, meistens handelt es sich um Vibrationsmotoren.
GamepadPose
Repräsentiert die Stellung des Steuergeräts (z.B. Position und Orientierung im dreidimensionalen Raum) im Falle eines WebVR-Steuergeräts.

Siehe unter Experimentelle Erweiterungen der Gamepad Schnittstelle nach Schnittstellen, die den Zugriff auf die oben erwähnten experimentellen Erweiterungen ermöglichen.

Erweiterungen für anderen Schnittstellen

Navigator.getGamepads()
Eine Erweiterung für das Navigator Objekt, das ein Array von Gamepad Objeketen zurückschickt, jeweils eines für jedes verbundene Gamepad.

Window Ereignisse

Window.ongamepadconnected
Repräsentiert einen Ereignisabwickler, der ausgeführt wird, wenn ein Gamepad verbunden wird (Wenn das gamepadconnected Ereignis auslöst).
Window.ongamepaddisconnected
Repräsentiert einen  Ereignisabwickler, der ausgeführt wird, wenn ein Gamepad getrennt wird (Wenn das gamepaddisconnected Ereignis auslöst).

Einführung und Leitfäden

Spezifikation

Spezifikation Status Kommentar
Gamepad Extensions Bearbeiterentwurf Definiert die Experimental Gamepad extensions.
Gamepad
Die Definition von 'The Gamepad API specification' in dieser Spezifikation.
Arbeitsentwurf Anfängliche Definition

Browser Kompatibilität

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid WebviewChrome für AndroidFirefox für AndroidOpera für AndroidSafari auf iOSSamsung Internet
GamepadChrome Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 21 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Edge Vollständige Unterstützung JaFirefox Vollständige Unterstützung 29
Vollständige Unterstützung 29
Keine Unterstützung 24 — 28
Deaktiviert
Deaktiviert From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE Keine Unterstützung NeinOpera Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 15 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari Vollständige Unterstützung 10.1WebView Android Keine Unterstützung NeinChrome Android Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 25 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Firefox Android Vollständige Unterstützung 32Opera Android Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 14 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari iOS Vollständige Unterstützung 10.3Samsung Internet Android Vollständige Unterstützung Ja
Gamepad() constructorChrome Vollständige Unterstützung 35Edge Vollständige Unterstützung 12Firefox Vollständige Unterstützung 29
Vollständige Unterstützung 29
Keine Unterstützung 24 — 28
Deaktiviert
Deaktiviert From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE Keine Unterstützung NeinOpera Vollständige Unterstützung 22Safari Vollständige Unterstützung 10.1WebView Android Keine Unterstützung NeinChrome Android Vollständige Unterstützung 35Firefox Android Vollständige Unterstützung 32Opera Android Vollständige Unterstützung 22Safari iOS Vollständige Unterstützung 10.3Samsung Internet Android Vollständige Unterstützung Ja
axesChrome Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 21 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Edge Vollständige Unterstützung 12Firefox Vollständige Unterstützung 29
Vollständige Unterstützung 29
Keine Unterstützung 24 — 28
Deaktiviert
Deaktiviert From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE Keine Unterstützung NeinOpera Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 15 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari Vollständige Unterstützung 10.1WebView Android Keine Unterstützung NeinChrome Android Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 25 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Firefox Android Vollständige Unterstützung 32Opera Android Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 14 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari iOS Vollständige Unterstützung 10.3Samsung Internet Android Vollständige Unterstützung Ja
buttonsChrome Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 21 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Edge Vollständige Unterstützung 12Firefox Vollständige Unterstützung 29
Vollständige Unterstützung 29
Keine Unterstützung 24 — 28
Deaktiviert
Deaktiviert From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE Keine Unterstützung NeinOpera Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 15 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari Vollständige Unterstützung 10.1WebView Android Keine Unterstützung NeinChrome Android Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 25 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Firefox Android Vollständige Unterstützung 32Opera Android Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 14 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari iOS Vollständige Unterstützung 10.3Samsung Internet Android Vollständige Unterstützung Ja
connectedChrome Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 25 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Edge Vollständige Unterstützung 12Firefox Vollständige Unterstützung 29
Vollständige Unterstützung 29
Keine Unterstützung 24 — 28
Deaktiviert
Deaktiviert From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE Keine Unterstützung NeinOpera Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 15 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari Vollständige Unterstützung 10.1WebView Android Keine Unterstützung NeinChrome Android Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 25 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Firefox Android Vollständige Unterstützung 32Opera Android Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 14 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari iOS Vollständige Unterstützung 10.3Samsung Internet Android Vollständige Unterstützung Ja
displayId
ExperimentellVeraltet
Chrome Vollständige Unterstützung Ja
Hinweise Deaktiviert
Vollständige Unterstützung Ja
Hinweise Deaktiviert
Hinweise Only works on desktop in an experimental version of Chrome (other builds won't return any devices when Navigator.getVRDisplays() is invoked).
Deaktiviert This feature is behind the WebVR preference. To change preferences in Chrome, visit chrome://flags.
Edge Vollständige Unterstützung 15Firefox Vollständige Unterstützung 55
Hinweise
Vollständige Unterstützung 55
Hinweise
Hinweise Windows support was enabled in Firefox 55.
Vollständige Unterstützung 64
Hinweise
Hinweise macOS support was enabled in Firefox 64.
IE Keine Unterstützung NeinOpera ? Safari Keine Unterstützung NeinWebView Android Keine Unterstützung NeinChrome Android Vollständige Unterstützung Ja
Hinweise
Vollständige Unterstützung Ja
Hinweise
Hinweise Currently supported only by Google Daydream.
Firefox Android Vollständige Unterstützung 55Opera Android ? Safari iOS Keine Unterstützung NeinSamsung Internet Android Vollständige Unterstützung Ja
hand
Experimentell
Chrome Keine Unterstützung NeinEdge Vollständige Unterstützung 15Firefox Vollständige Unterstützung Ja
Hinweise Deaktiviert
Vollständige Unterstützung Ja
Hinweise Deaktiviert
Hinweise The flag is enabled by default in Firefox Nightly and Beta, versions 55 and above.
Deaktiviert This feature is behind the dom.gamepad-extensions.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE Keine Unterstützung NeinOpera Keine Unterstützung NeinSafari Keine Unterstützung NeinWebView Android Keine Unterstützung NeinChrome Android Keine Unterstützung NeinFirefox Android Keine Unterstützung NeinOpera Android Keine Unterstützung NeinSafari iOS Keine Unterstützung NeinSamsung Internet Android Keine Unterstützung Nein
hapticActuators
Experimentell
Chrome Keine Unterstützung NeinEdge Vollständige Unterstützung 15Firefox Vollständige Unterstützung Ja
Hinweise Deaktiviert
Vollständige Unterstützung Ja
Hinweise Deaktiviert
Hinweise The flag is enabled by default in Firefox Nightly and Beta, versions 55 and above.
Deaktiviert This feature is behind the dom.gamepad-extensions.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE Keine Unterstützung NeinOpera Keine Unterstützung NeinSafari Keine Unterstützung NeinWebView Android Keine Unterstützung NeinChrome Android Keine Unterstützung NeinFirefox Android Keine Unterstützung NeinOpera Android Keine Unterstützung NeinSafari iOS Keine Unterstützung NeinSamsung Internet Android Keine Unterstützung Nein
id
Experimentell
Chrome Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 21 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Edge Vollständige Unterstützung 12Firefox Vollständige Unterstützung 29
Vollständige Unterstützung 29
Keine Unterstützung 24 — 28
Deaktiviert
Deaktiviert From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE Keine Unterstützung NeinOpera Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 15 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari Keine Unterstützung NeinWebView Android Keine Unterstützung NeinChrome Android Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 25 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Firefox Android Vollständige Unterstützung 32Opera Android Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 14 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari iOS Keine Unterstützung NeinSamsung Internet Android Vollständige Unterstützung Ja
index
Experimentell
Chrome Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 21 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Edge Vollständige Unterstützung 12Firefox Vollständige Unterstützung 29
Vollständige Unterstützung 29
Keine Unterstützung 24 — 28
Deaktiviert
Deaktiviert From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE Keine Unterstützung NeinOpera Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 15 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari Vollständige Unterstützung 10.1WebView Android Keine Unterstützung NeinChrome Android Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 25 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Firefox Android Vollständige Unterstützung 32Opera Android Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 14 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari iOS Vollständige Unterstützung 10.3Samsung Internet Android Vollständige Unterstützung Ja
mappingChrome Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 21 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Edge Vollständige Unterstützung 12Firefox Vollständige Unterstützung 29
Vollständige Unterstützung 29
Keine Unterstützung 24 — 28
Deaktiviert
Deaktiviert From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE Keine Unterstützung NeinOpera Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 15 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari Vollständige Unterstützung 10.1WebView Android Keine Unterstützung NeinChrome Android Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 25 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Firefox Android Vollständige Unterstützung 32Opera Android Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 14 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari iOS Vollständige Unterstützung 10.3Samsung Internet Android Vollständige Unterstützung Ja
pose
Experimentell
Chrome Keine Unterstützung NeinEdge Vollständige Unterstützung 15Firefox Vollständige Unterstützung Ja
Hinweise Deaktiviert
Vollständige Unterstützung Ja
Hinweise Deaktiviert
Hinweise The flag is enabled by default in Firefox Nightly and Beta, versions 55 and above.
Deaktiviert This feature is behind the dom.gamepad-extensions.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE Keine Unterstützung NeinOpera Keine Unterstützung NeinSafari Keine Unterstützung NeinWebView Android Keine Unterstützung NeinChrome Android Keine Unterstützung NeinFirefox Android Keine Unterstützung NeinOpera Android Keine Unterstützung NeinSafari iOS Keine Unterstützung NeinSamsung Internet Android Keine Unterstützung Nein
timestampChrome Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 21 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Edge Vollständige Unterstützung 12Firefox Vollständige Unterstützung 29
Vollständige Unterstützung 29
Keine Unterstützung 24 — 28
Deaktiviert
Deaktiviert From version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
IE Keine Unterstützung NeinOpera Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 15 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari Vollständige Unterstützung 10.1WebView Android Keine Unterstützung NeinChrome Android Vollständige Unterstützung 35
Vollständige Unterstützung 35
Keine Unterstützung 25 — 34
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Firefox Android Vollständige Unterstützung 32Opera Android Vollständige Unterstützung 22
Vollständige Unterstützung 22
Keine Unterstützung 14 — 21
Mit Präfix
Mit Präfix Benötigt das Herstellerpräfix: webkit
Safari iOS Vollständige Unterstützung 10.3Samsung Internet Android Vollständige Unterstützung Ja

Legende

Vollständige Unterstützung  
Vollständige Unterstützung
Keine Unterstützung  
Keine Unterstützung
Kompatibilität unbekannt  
Kompatibilität unbekannt
Experimentell. Das Verhalten kann sich zukünftig ändern.
Experimentell. Das Verhalten kann sich zukünftig ändern.
Veraltet. Nicht für den Einsatz in neuen Webseiten gedacht.
Veraltet. Nicht für den Einsatz in neuen Webseiten gedacht.
Siehe Implementierungshinweise.
Siehe Implementierungshinweise.
Benutzer muss dieses Feature explizit aktivieren.
Benutzer muss dieses Feature explizit aktivieren.
Benötigt ein Herstellerpräfix oder einen anderen Namen zur Verwendung.
Benötigt ein Herstellerpräfix oder einen anderen Namen zur Verwendung.

Siehe weiters