Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

HIDDevice: inputreport Ereignis

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.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Hinweis: This feature is available in Web Workers, except for Shared Web Workers.

Das inputreport Ereignis des HIDDevice-Interfaces wird ausgelöst, wenn ein neuer Bericht vom HID-Gerät empfangen wird.

Syntax

Verwenden Sie den Ereignisnamen in Methoden wie addEventListener(), oder setzen Sie eine Ereignis-Handler-Eigenschaft.

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

oninputreport = (event) => { }

Ereignistyp

Ein HIDInputReportEvent. Erbt von Event.

Event HIDInputReportEvent

Ereigniseigenschaften

Dieses Interface erbt auch Eigenschaften von Event.

HIDInputReportEvent.data Schreibgeschützt

Ein DataView, das die Daten des Eingabebereichs enthält, ohne die reportId, wenn das HID-Interface Bericht-IDs verwendet.

HIDInputReportEvent.device Schreibgeschützt

Die HIDDevice-Instanz, die das HID-Interface darstellt, das den Eingabebereich gesendet hat.

HIDInputReportEvent.reportId Schreibgeschützt

Das ein Byte lange Identifikationspräfix für diesen Bericht, oder 0, wenn das HID-Interface keine Bericht-IDs verwendet.

Beispiel

Das folgende Beispiel demonstriert, wie man auf ein inputreport Ereignis hört, das es der Anwendung ermöglicht, zu erkennen, welche Taste auf einem Joy-Con Right Gerät gedrückt wird. Weitere Beispiele und Live-Demos finden Sie im Artikel Verbindung zu ungewöhnlichen HID-Geräten.

js
device.addEventListener("inputreport", (event) => {
  const { data, device, reportId } = event;

  // Handle only the Joy-Con Right device and a specific report ID.
  if (device.productId !== 0x2007 && reportId !== 0x3f) return;

  const value = data.getUint8(0);
  if (value === 0) return;

  const someButtons = { 1: "A", 2: "X", 4: "B", 8: "Y" };
  console.log(`User pressed button ${someButtons[value]}.`);
});

Spezifikationen

Specification
WebHID API
# dom-hiddevice-oninputreport

Browser-Kompatibilität