Web/API/Gamepad/id

From Get docs


The Gamepad.id property of the Gamepad interface returns a string containing some information about the controller.

The exact syntax is not strictly specified, but in Firefox it will contain three pieces of information separated by dashes (-):

  • Two 4-digit hexadecimal strings containing the USB vendor and product id of the controller
  • The name of the controller as provided by the driver.

For example, a PS2 controller returned 810-3-USB Gamepad.

This information is intended to allow you to find a mapping for the controls on the device as well as display useful feedback to the user.

Syntax

readonly    attribute DOMString           id;

Example

window.addEventListener("gamepadconnected", function() {
  var gp = navigator.getGamepads()[0];
  gamepadInfo.innerHTML = "Gamepad connected at index " + gp.index + ": " + gp.id + ".";
});

Value

A string.

Specifications

Specification Status Comment
GamepadThe definition of 'Gamepad.id' in that specification. Working Draft Initial definition

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet

id

Experimental'

Chrome Full support 35


Full support 35


No support 21 — 34

Prefixed'

Prefixed' Implemented with the vendor prefix: webkit

Edge

Full support 12

Firefox Full support 29


Full support 29


No support 24 — 28

Disabled'

Disabled' 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

No support No

Opera Full support 22


Full support 22


No support 15 — 21

Prefixed'

Prefixed' Implemented with the vendor prefix: webkit

Safari

No support No

WebView Android

No support No

Chrome Android Full support 35


Full support 35


No support 25 — 34

Prefixed'

Prefixed' Implemented with the vendor prefix: webkit

Firefox Android

Full support 32

Opera Android Full support 22


Full support 22


No support 14 — 21

Prefixed'

Prefixed' Implemented with the vendor prefix: webkit

Safari iOS

No support No

Samsung Internet Android Full support 4.0


Full support 4.0


No support 2.0 — 3.0

Prefixed'

Prefixed' Implemented with the vendor prefix: webkit

Legend

Full support  
Full support
No support  
No support
Experimental. Expect behavior to change in the future.'
Experimental. Expect behavior to change in the future.
User must explicitly enable this feature.'
User must explicitly enable this feature.
Requires a vendor prefix or different name for use.'
Requires a vendor prefix or different name for use.


See also

Using the Gamepad API