XRSession:selectend 事件
WebXR 事件selectend
在其中一个输入源结束其主要操作或正在处理正在进行的主要操作的输入源在成功完成操作之前断开连接时发送到XRSession
。
beforexrselect
在该事件之前触发,并且可以阻止该事件被触发。
语法
在诸如addEventListener()
之类的中使用事件名称,或设置事件处理程序属性。
addEventListener("selectend", (event) => {});
onselectend = (event) => {};
事件类型
一个XRInputSourceEvent
。继承自Event
。
事件属性
除了下面列出的属性外,父接口Event
中的属性也可用。
frame
只读-
一个
XRFrame
对象,提供有关事件发生期间事件帧所需的信息。此帧可能已在过去呈现,而不是当前帧。因为这是一个事件帧,而不是动画帧,所以你不能在上面调用XRFrame
方法getViewerPose()
;而是使用getPose()
。 inputSource
只读-
一个
XRInputSource
对象,指示哪个输入源生成了输入事件。
描述
触发
当用户停止按下触发器或按钮、点击触控板、说出命令或在使用带有加速度计的视频跟踪系统或手持控制器时执行可识别的姿势时触发。
使用案例
selectend
和 selectstart
事件会告诉您何时可能需要向用户显示一些内容,指示主要操作正在进行。这可能是以新的颜色绘制带有激活按钮的控制器,或者显示目标对象正在被抓取并四处移动,从 selectstart
到达开始,到收到 selectend
停止。
select
事件是告诉您的代码用户已完成他们想要完成的操作的事件。这可能像在游戏中投掷物体或拉动枪的扳机一样简单,也可能像将拖动的物体放置到新位置一样复杂。
如果您的主要操作是简单的触发操作,并且在触发器处于激活状态时不需要任何动画,您可以忽略 selectstart
和 selectend
事件,并在开始事件上执行操作。
示例
请参阅 selectstart
事件以获取示例代码。
规范
规范 |
---|
WebXR 设备 API # eventdef-xrsession-selectend |
WebXR 设备 API # dom-xrsession-onselectend |
浏览器兼容性
BCD 表格仅在浏览器中加载