RTCDataChannel:open 事件

WebRTC 的open事件在用于发送和接收数据通道消息的基础传输打开或重新打开时,发送到RTCDataChannel对象的onopen事件处理程序。

此事件不可取消,也不冒泡。

语法

在诸如addEventListener()之类的使用方法中使用事件名称,或设置事件处理程序属性。

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

onopen = (event) => {};

事件类型

事件属性

还继承了其父接口Event的属性。

channel 只读

返回与事件关联的RTCDataChannel

示例

此示例将open事件的处理程序添加到RTCDataChannel dc,在建立连接后,该处理程序会调整用户界面以指示聊天窗口已准备好使用。它启用消息输入框和发送按钮,以及启用断开连接按钮和禁用连接按钮。最后,消息输入框获得焦点,以便用户可以立即开始输入。

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

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

这也可以通过直接设置通道的onopen事件处理程序属性的值来完成。

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

  messageInputBox.focus();
};

浏览器兼容性

BCD 表仅在启用 JavaScript 的浏览器中加载。

另请参阅