The GamepadEvent interface of the Gamepad API contains references to gamepads connected to the system, which is what the gamepad events Window.gamepadconnected and Window.gamepaddisconnected are fired in response to.
Note: These events are not fired in Chrome, only Firefox. In Chrome you have to use Navigator.getGamepads() to access Gamepad objects.
Properties
- GamepadEvent.gamepadRead only
- Returns a Gamepadobject, providing access to the associated gamepad data for the event fired.
Examples
The gamepad property being called on a fired Window.gamepadconnected event.
window.addEventListener("gamepadconnected", function(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);
});
And on a Window.gamepaddisconnected event.
window.addEventListener("gamepaddisconnected", function(e) {
  console.log("Gamepad disconnected from index %d: %s",
  e.gamepad.index, e.gamepad.id);
});
Specifications
| Specification | Status | Comment | 
|---|---|---|
| Gamepad The definition of 'GamepadEvent' in that specification. | Working Draft | Initial definition | 
Browser compatibility
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) | 
|---|---|---|---|---|---|---|
| General support | 21.0 webkit | (Yes) | 29.0 (29.0) | No support | 15.0 webkit | No support | 
| Feature | Android | Edge | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile | 
|---|---|---|---|---|---|---|
| General support | No support | (Yes) | 32.0 (32.0) | No support | No support | No support |