RTCDataChannel:close 事件
当数据通道的数据传输关闭时,close
事件将发送到 RTCDataChannel
实例的 onclose
事件处理程序。在使用 RTCDataChannel
传输任何其他数据之前,必须创建一个新的 'RTCDataChannel' 实例。
此事件不可取消,也不冒泡。
语法
在 addEventListener()
等方法中使用事件名称,或设置事件处理程序属性。
js
addEventListener("close", (event) => {});
onclose = (event) => {};
事件类型
一个通用的 Event
。
示例
此示例为名为 dc
的 RTCDataChannel
设置了 close
事件的处理程序;在此示例中,它的职责是更新用户界面元素以反映不再有正在进行的呼叫,并允许启动新的呼叫。
js
dc.addEventListener(
"close",
(ev) => {
messageInputBox.disabled = true;
sendButton.disabled = true;
connectButton.disabled = false;
disconnectButton.disabled = true;
},
false,
);
此代码在接收到 close
事件后所做的所有工作就是禁用输入框及其“发送”按钮,并启用用于启动呼叫的按钮(同时禁用用于结束呼叫的按钮)。
您还可以使用 onclose
事件处理程序属性为 close
事件设置处理程序
js
dc.onclose = (ev) => {
messageInputBox.disabled = true;
sendButton.disabled = true;
connectButton.disabled = false;
disconnectButton.disabled = true;
};
规范
规范 |
---|
WebRTC:浏览器中的实时通信 # event-datachannel-close |
WebRTC:浏览器中的实时通信 # dom-rtcdatachannel-onclose |
浏览器兼容性
BCD 表格仅在启用了 JavaScript 的浏览器中加载。