Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
XRInputSourcesChangeEvent
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more support for this feature? Tell us why.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Das WebXR Device API-Interface XRInputSourcesChangeEvent wird verwendet, um das inputsourceschange Ereignis zu repräsentieren, das an eine XRSession gesendet wird, wenn sich die Menge der verfügbaren WebXR-Eingabegeräte ändert.
Konstruktor
XRInputSourcesChangeEvent()-
Erstellt und gibt ein neues
XRInputSourcesChangeEvent-Objekt zurück. Der angegebene Typ mussinputsourceschangesein, welches das einzige Ereignis ist, das dieses Interface verwendet.
Instanzeigenschaften
addedSchreibgeschützt-
Ein Array von null oder mehr
XRInputSource-Objekten, die jeweils ein Eingabegerät darstellen, das neu verbunden oder zur Nutzung aktiviert wurde. removedSchreibgeschützt-
Ein Array von null oder mehr
XRInputSource-Objekten, die die Eingabegeräte darstellen, die neu verbunden oder zur Nutzung aktiviert wurden. sessionSchreibgeschützt-
Die
XRSession, an die dieses Eingabequellenänderungsereignis gerichtet ist.
Instanzmethoden
Obwohl XRInputSourcesChangeEvent keine eigenen Methoden definiert, erbt es Methoden von seinem Elterninterface, Event.
Ereignistypen
inputsourceschange-
Wird an die
XRSessiongesendet, wenn sich die Menge der verfügbaren Eingabegeräte ändert.
Beispiele
Das folgende Beispiel zeigt, wie Sie einen Ereignishandler einrichten, der inputsourceschange-Ereignisse verwendet, um neu verfügbare Zeigegeräte zu erkennen und deren Modelle zu laden, um sie im nächsten Animationsframe anzuzeigen.
xrSession.addEventListener("inputsourceschange", onInputSourcesChange);
function onInputSourcesChange(event) {
for (const input of event.added) {
if (input.targetRayMode === "tracked-pointer") {
loadControllerMesh(input);
}
}
}
Sie können auch einen Handler für inputsourceschange-Ereignisse hinzufügen, indem Sie den oninputsourceschange-Ereignishandler setzen:
xrSession.oninputsourceschange = onInputSourcesChange;
Spezifikationen
| Spezifikation |
|---|
| WebXR Device API> # xrinputsourceschangeevent-interface> |
Browser-Kompatibilität
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.