RTCDataChannel: close 事件
当数据通道的数据传输已关闭时,会向 RTCDataChannel 实例上的 onclose 事件处理程序发送 close 事件。在可以使用 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;
});
响应接收 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 |
浏览器兼容性
加载中…
另见
- WebRTC API
- 一个简单的 RTCDataChannel 示例
- 相关事件:
open、message和error