XRInputSourcesChangeEvent

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

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.

Event XRInputSourcesChangeEvent

Konstruktor

XRInputSourcesChangeEvent()

Erstellt und gibt ein neues XRInputSourcesChangeEvent-Objekt zurück. Der angegebene Typ muss inputsourceschange sein, welches das einzige Ereignis ist, das dieses Interface verwendet.

Instanzeigenschaften

added Schreibgeschützt

Ein Array von null oder mehr XRInputSource-Objekten, die jeweils ein Eingabegerät darstellen, das neu verbunden oder zur Nutzung aktiviert wurde.

removed Schreibgeschützt

Ein Array von null oder mehr XRInputSource-Objekten, die die Eingabegeräte darstellen, die neu verbunden oder zur Nutzung aktiviert wurden.

session Schreibgeschü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 XRSession gesendet, 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.

js
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:

js
xrSession.oninputsourceschange = onInputSourcesChange;

Spezifikationen

Specification
WebXR Device API
# xrinputsourceschangeevent-interface

Browser-Kompatibilität

BCD tables only load in the browser