Gamepad API

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2017.

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

A Gamepad API é uma maneira dos desenvolvedores acessarem e responderem à sinais oriundos de gamepads e outros controladores de games de forma simples e consistente. A API contém três interfaces, dois eventos e uma função especialista, para responder aos gamepads sendo conectados e desconectados, e acessar outras informações sobre o próprio gamepad, e quais botões e outros controles estão sendo de fato passados.

Interfaces

Gamepad

Representa o gamepad/controlador conectado ao computador.

GamepadButton

Representa um botão num dos controles conectados.

GamepadEvent

O objeto de evento representando eventos disparados que são relacionados ao gamepad.

Experimental Gamepad extensions

GamepadHapticActuator

Representa o hardware no controlador designado à prover feedbacks táteis ao usuário (Se disponível), mais comumente um hardware de vibração.

GamepadPose

Representa a "localização" de um controle (ex. posição e orientação no espaço 3D) no caso de um controlador WebVR.

Veja também as extensões para a interface de Gamepad, para funcionalidades que permitem você acessar as informações acima.

Extensions to other interfaces

Uma extensão para o objeto Navigator que retorna um array de objetos Gamepad, um para cada controlador conectado.

Window events

Window.ongamepadconnected

Representa um controlador de evento que irá rodar quando o gamepad é conectado (quando o evento gamepadconnected for disparado).

Window.ongamepaddisconnected

Representa um controlador de evento que irá rodar quando o gamepad é desconectado (quando o evento gamepaddisconnected for disparado).

Guias e tutorias

Especificações

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

Compatibilidade com navegadores

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Gamepad
axes
buttons
connected
displayId
DeprecatedNon-standard
hand
Experimental
hapticActuators
Experimental
id
index
mapping
pose
Experimental
Secure context required
Experimental
timestamp
vibrationActuator

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
Experimental. Expect behavior to change in the future.
Non-standard. Check cross-browser support before using.
Deprecated. Not for use in new websites.
User must explicitly enable this feature.
Has more compatibility info.

Veja também