This feature is not Baseline because it does not work in some of the most widely-used browsers.
The gamepadconnected event is fired when the browser detects that a gamepad has been connected or the first time a button/axis of the gamepad is used.
The event will not fire if disallowed by the document's gamepad Permissions Policy.
This event is not cancelable and does not bubble.
Use the event name in methods like addEventListener(), or set an event handler property.
addEventListener("gamepadconnected", (event) => { })
ongamepadconnected = (event) => { }
To be informed when a gamepad is connected, you can add a handler to the window using addEventListener(), like this:
window.addEventListener("gamepadconnected", (event) => {
// All buttons and axes values can be accessed through
const gamepad = event.gamepad;
});
Alternatively, you can use the window.ongamepadconnected event handler property to establish a handler for the gamepadconnected event:
window.ongamepadconnected = (event) => {
// All buttons and axes values can be accessed through
const gamepad = event.gamepad;
};
| Specification |
|---|
| Gamepad> # event-gamepadconnected> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
gamepadconnected_event |
89 | 16 | 89 | 16 | 16 | |||||||
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Window/gamepadconnected_event