connectionstatechange event is sent to the ontrack event handler on an RTCPeerConnection object after a new track has been added to an RTCRtpReceiver which is part of the connection. The new connection state can be found in connectionState , and is one of the strings in the RTCPeerConnectionState enumerated type.

冒泡 No
可取消 No
接口 事件
Event handler onconnectionstatechange

范例

For an RTCPeerConnection , pc , this example sets up a handler for connectionstatechange messages to handle changes to the connectivity of the WebRTC session. It simply calls an app-defined function called setOnlineStatus() to update a status display.

pc.onconnectionstatechange = ev => {
  switch(pc.connectionState) {
    case "new":
    case "checking":
      setOnlineStatus("Connecting...");
      break;
    case "connected":
      setOnlineStatus("Online");
      break;
    case "disconnected":
      setOnlineStatus("Disconnecting...");
      break;
    case "closed":
      setOnlineStatus("Offline");
      break;
    case "failed":
      setOnlineStatus("Error");
      break;
    默认:
      setOnlineStatus("Unknown");
      break;
  }
}
					

You can also create a handler for connectionstatechange 通过使用 addEventListener() :

pc.addEventListener("connectionstatechange", ev => {
  switch(pc.connectionState) {
    /* ... */
  }
}, false);
					

规范

规范 状态 注释
WebRTC 1.0: Real-time Communication Between Browsers
The definition of 'connectionstatechange' in that specification.
候选推荐 最初的规范。

浏览器兼容性

The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.

No compatibility data found. Please contribute data for "event.RTCPeerConnection.connectionstatechange_event" (depth: 1) to the MDN 兼容性数据存储库 .

另请参阅

元数据

  • 最后修改: