XRSessionEvent

安全上下文:此功能仅在安全上下文(HTTPS)中可用,在某些或所有支持的浏览器中可用。

WebXR 设备 APIXRSessionEvent接口描述了一个事件,该事件指示XRSession状态的变化。例如,当会话结束或其上下文的可见性发生变化时,会发生这些事件。

Event XRSessionEvent

构造函数

XRSessionEvent()

创建并返回一个新的 XRSessionEvent 对象。

实例属性

除了从其父接口Event继承的属性之外,XRSessionEvent 还提供了以下属性

session 只读

该事件所引用的XRSession

实例方法

虽然 XRSessionEvent 没有定义任何方法,但它从其父接口Event继承了方法。

会话事件类型

以下事件使用 XRSessionEvent 接口表示,是其 type 属性的允许值。

end

在会话结束后触发,在被应用程序或用户代理终止后触发。

visibilitychange

每当会话的可见性状态发生变化时,都会触发该事件。

示例

此示例创建了一个监听器,用于监听会话可见性状态的变化。它通过调用带有布尔值(指示会话是否可见)的函数 mySessionVisible() 来做出反应;例如,该函数可以启动或重新配置一个处理场景渲染的 worker。

js
xrSession.addEventListener("visibilitystate", (e) => {
  switch (e.session.visibilitystate) {
    case "visible":
    case "visible-blurred":
      mySessionVisible(true);
      break;
    case "hidden":
      mySessionVisible(false);
      break;
  }
});

规范

规范
WebXR 设备 API
# xrsessionevent-interface

浏览器兼容性

BCD 表格仅在启用了 JavaScript 的浏览器中加载。