XRInputSourceArray:entries() 方法
XRInputSourceArray 介面的 entries() 方法會返回一個 JavaScript iterator,你可以使用這個迭代器遍歷輸入源陣列中的鍵值對。陣列中的每一項都是一個 XRInputSource 物件。
最常見的情況是,你會將它與諸如 for...of 這樣的語句結合使用。
語法
js
entries()
引數
無。
返回值
一個 iterator,可以用來遍歷輸入源陣列中包含的 XRInputSource 物件列表。
示例
此示例程式碼段獲取會話的輸入列表,並嘗試使用它來處理它支援的每種型別的輸入裝置。
js
let sources = xrSession.inputSources;
for (const input of sources.entries()) {
if (input.gamepad) {
checkGamepad(input.gamepad);
} else if (
input.targetRayMode === "tracked-pointer" &&
input.handedness === player.handedness
) {
/* Handle main hand controller */
handleMainHandInput(input);
} else {
/* Handle other inputs */
}
}
對於列表中的每個輸入,遊戲手柄的輸入會使用該輸入的 Gamepad 物件,該物件可以從其 gamepad 屬性獲取,然後傳遞給 checkGamepad() 方法進行處理。
對於其他裝置,我們會查詢玩家主手上的 tracked-pointer 裝置,並將它們分派給 handleMainHandInput() 方法。
規範
此特性似乎未在任何規範中定義。瀏覽器相容性
載入中…