files/en-us/web/api/gamepad/displayid/index.md
{{APIRef("WebVR API")}}{{Deprecated_Header}}{{Non-standard_Header}}
The displayId read-only property of the {{domxref("Gamepad")}} interface returns the {{domxref("VRDisplay.displayId")}} of the associated {{domxref("VRDisplay")}} — the VRDisplay that the gamepad is controlling the displayed scene of.
A Gamepad is considered to be associated with a {{domxref("VRDisplay")}} if it reports a pose that is in the same space as the display's pose, see {{domxref("VRDisplay.getPose()")}}.
[!NOTE] This property was part of the old WebVR API. It has been superseded by the WebXR Gamepads Module.
There is no direct replacement for this property. The {{domxref("Gamepad")}} object associated with an {{domxref("XRInputSource")}} can be obtained using the {{domxref("XRInputSource.gamepad")}} property.
A number representing the associated {{domxref("VRDisplay.displayId")}}. If the number is 0, then the gamepad is not associated with a VR display.
window.addEventListener("gamepadconnected", (e) => {
if (!e.gamepad.displayId) {
console.log("Gamepad connected");
} else {
console.log(
`Gamepad connected, associated with VR display ${e.gamepad.displayId}`,
);
}
});
This property was part of the old WebVR API that has been superseded by the WebXR Gamepads Module. It is no longer on track to becoming a standard.
Until all browsers have implemented the new WebXR APIs, it is recommended to rely on frameworks, like A-Frame, Babylon.js, or Three.js, or a polyfill, to develop WebXR applications that will work across all browsers. Read Meta's Porting from WebVR to WebXR guide for more information.
{{Compat}}