XRSession: squeezeend 事件

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

XRSession 的一個輸入源結束其主要操作,或者正在處理進行中的主要操作的輸入源在未成功完成操作的情況下斷開連線時,會向 XRSession 傳送 squeezeend WebXR 事件。

主要擠壓操作包括使用者按下扳機或按鈕、輕觸觸控板、說出命令,或在使用影片跟蹤系統或帶有加速計的手持控制器時執行可識別的手勢。

語法

在諸如 addEventListener() 之類的方法中使用事件名稱,或設定事件處理程式屬性。

js
addEventListener("squeezeend", (event) => { })

onsqueezeend = (event) => { }

事件型別

一個 XRInputSourceEvent。繼承自 Event

Event XRInputSourceEvent

事件屬性

除了下面列出的屬性之外,父介面 Event 的屬性也可使用。

frame 只讀

一個 XRFrame 物件,提供事件發生期間所需的事件幀資訊。此幀可能是在過去渲染的,而不是當前的幀。因為這是一個事件幀,而不是動畫幀,所以您不能在其上呼叫 XRFrame.getViewerPose();而是使用 getPose()

inputSource 只讀

一個 XRInputSource 物件,指示是哪個輸入源生成了此輸入事件。

描述

觸發

當用戶停止擠壓控制器、做出模仿抓取某物的抓握手勢,或使用(擠壓)扳機時觸發。

用例

會發送 squeezestart 事件,指示使用者已開始擠壓操作。

如果主要擠壓動作成功結束,則會話會收到一個 squeeze 事件。

會發送 squeezeend 事件,指示擠壓操作不再進行中。無論擠壓操作是否成功,都會發送此事件。

示例

有關示例程式碼,請參閱 squeezestart 事件。

規範

規範
WebXR Device API
# eventdef-xrsession-squeezeend
WebXR Device API
# dom-xrsession-onsqueezeend

瀏覽器相容性