RTCDataChannel: close 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 close Ereignis wird an den onclose Ereignishandler einer RTCDataChannel Instanz gesendet, wenn der Datentransport für den Datenkanal geschlossen wurde. Bevor weitere Daten über RTCDataChannel übertragen werden können, muss eine neue 'RTCDataChannel' Instanz erstellt werden.

Dieses Ereignis kann nicht abgebrochen werden und wird nicht weitergeleitet.

Syntax

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

js
addEventListener("close", (event) => {});

onclose = (event) => {};

Ereignistyp

Ein generisches Event.

Beispiele

Dieses Beispiel richtet einen Handler für das close Ereignis des RTCDataChannel namens dc ein. Seine Aufgabe in diesem Beispiel besteht darin, die Benutzeroberfläche so zu aktualisieren, dass angezeigt wird, dass kein Anruf mehr läuft, und es zu ermöglichen, einen neuen Anruf zu starten.

js
dc.addEventListener(
  "close",
  (ev) => {
    messageInputBox.disabled = true;
    sendButton.disabled = true;
    connectButton.disabled = false;
    disconnectButton.disabled = true;
  },
  false,
);

Der gesamte Code bewirkt, dass in Antwort auf das close Ereignis ein Eingabefeld und dessen "Senden"-Button deaktiviert werden, während der Button, der zum Starten eines Anrufs verwendet wird, aktiviert wird (und der zum Beenden eines Anrufs deaktiviert wird).

Sie können auch die onclose Ereignishandler-Eigenschaft verwenden, um einen Handler für close Ereignisse einzurichten:

js
dc.onclose = (ev) => {
  messageInputBox.disabled = true;
  sendButton.disabled = true;
  connectButton.disabled = false;
  disconnectButton.disabled = true;
};

Spezifikationen

Specification
WebRTC: Real-Time Communication in Browsers
# event-datachannel-close
WebRTC: Real-Time Communication in Browsers
# dom-rtcdatachannel-onclose

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
close event

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

Siehe auch