我们的志愿者还没有将这篇文章翻译为 中文 (简体)加入我们帮助完成翻译!
您也可以阅读此文章的English (US)版。

This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.

The VRDisplayEvent interface of the WebVR API represents represents the event object of WebVR-related events (see the list of WebVR window extensions).


Creates a VRDisplayEvent object instance.


VRDisplayEvent also inherits properties from its parent object, Event.

VRDisplayEvent.display Read only
The VRDisplay associated with this event.
VRDisplayEvent.reason Read only
A human-readable reason why the event was fired.


window.addEventListener('vrdisplaypresentchange', function(e) {
  console.log('Display ' + e.display.displayId + ' presentation has changed. Reason given: ' + e.reason + '.');


Specification Status Comment
WebVR 1.1
The definition of 'VRDisplayEvent' in that specification.
Editor's Draft Initial definition

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
display (Yes)1 2 (Yes)553 No ? ?
reason (Yes)1 2 (Yes)553 No ? ?
VRDisplayEvent (Yes)1 2 (Yes)553 No ? ?
FeatureAndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
display No (Yes)4 ? ? No ? ?
reason No (Yes)4 ? ? No ? ?
VRDisplayEvent No (Yes)4 ? ? No ? ?

1. Only works on desktop in an experimental version of Chrome (other builds won't return any devices when Navigator.getVRDisplays() is invoked).

2. , this feature is behind the WebVR preference. To change preferences in Chrome, visit chrome://flags.

3. Currently only Windows support is enabled by default. Mac support is available in Firefox Nightly.

4. Currently supported only by Google Daydream.

See also