RTCDataChannel: open-Ereignis

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

Das WebRTC open-Ereignis wird an den onopen-Ereignishandler eines RTCDataChannel-Objekts gesendet, wenn der zugrunde liegende Transport, der zum Senden und Empfangen der Nachrichten des Datenkanals verwendet wird, geöffnet oder erneut geöffnet wird.

Dieses Ereignis kann nicht abgebrochen werden und wird nicht gebubbelt.

Syntax

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

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

onopen = (event) => { }

Ereignistyp

Ereigniseigenschaften

Erbt auch Eigenschaften von seiner übergeordneten Schnittstelle, Event.

channel Schreibgeschützt

Gibt das mit dem Ereignis verbundene RTCDataChannel zurück.

Beispiele

Dieses Beispiel fügt dem RTCDataChannel dc einen Handler für das open-Ereignis hinzu, der die Benutzeroberfläche anpasst, um anzuzeigen, dass ein Chat-Fenster bereit zur Nutzung ist, nachdem eine Verbindung hergestellt wurde. Es aktiviert das Nachrichten-Eingabefeld und den Senden-Button sowie den Trennen-Button und deaktiviert den Verbinden-Button. Schließlich wird das Nachrichten-Eingabefeld fokussiert, damit der Benutzer sofort mit der Eingabe beginnen kann.

js
dc.addEventListener(
  "open",
  (ev) => {
    messageInputBox.disabled = false;
    sendMessageButton.disabled = false;
    disconnectButton.disabled = false;
    connectButton.disabled = true;

    messageInputBox.focus();
  },
  false,
);

Dies kann auch durchgeführt werden, indem direkt der Wert der onopen-Ereignishandlereigenschaft des Kanals gesetzt wird.

js
dc.onopen = (ev) => {
  messageInputBox.disabled = false;
  sendMessageButton.disabled = false;
  disconnectButton.disabled = false;
  connectButton.disabled = true;

  messageInputBox.focus();
};

Spezifikationen

Specification
WebRTC: Real-Time Communication in Browsers
# event-datachannel-open
WebRTC: Real-Time Communication in Browsers
# dom-rtcdatachannel-onopen

Browser-Kompatibilität

Siehe auch