XRInputSourceArray: entries()-Methode
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more browser support for this feature? Tell us why.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Die entries()-Methode der Schnittstelle XRInputSourceArray gibt einen JavaScript-iterator zurück, mit dem sich die Schlüssel-Wert-Paare im Eingabequellen-Array durchlaufen lassen. Jeder Schlüssel ist der Index einer Eingabequelle im Array; jeder Wert ist das zugehörige XRInputSource-Objekt.
Meistens verwenden Sie diese Methode zusammen mit Anweisungen wie for...of.
Syntax
entries()
Parameter
Keine.
Rückgabewert
Ein iterator, der für jedes im Eingabequellen-Array enthaltene XRInputSource-Objekt ein Paar [index, inputSource] liefert.
Beispiele
Dieser Codeausschnitt ruft die Liste der Eingabequellen einer Sitzung ab und versucht, jeden unterstützten Eingabegerätetyp zu verarbeiten.
let sources = xrSession.inputSources;
for (const [index, 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 */
}
}
Für jede Eingabe in der Liste werden Gamepad-Eingaben an checkGamepad() weitergegeben. Dabei wird das Gamepad-Objekt der Eingabe, das aus ihrer Eigenschaft gamepad stammt, als Argument übergeben.
Bei anderen Geräten suchen wir nach tracked-pointer-Geräten in der Haupthand der spielenden Person und übergeben diese an die Methode handleMainHandInput().
Spezifikationen
| Spezifikation |
|---|
| WebXR Device API> # xrinputsourcearray> |