RTCPeerConnection: signalingstatechange 事件
一个 **signalingstatechange
** 事件被发送到 RTCPeerConnection
以通知它其信令状态(由 signalingState
属性指示)已更改。
此事件不可取消,也不会冒泡。
语法
在诸如 addEventListener()
之类的方法中使用事件名称,或设置事件处理程序属性。
js
addEventListener("signalingstatechange", (event) => {});
onsignalingstatechange = (event) => {};
事件类型
一个通用的 Event
。
示例
给定一个 RTCPeerConnection
,pc
,以及一个向用户呈现状态信息的 updateStatus()
函数,此代码设置了一个事件处理程序,以便在 ICE 协商过程结束时通知用户。
js
pc.addEventListener(
"signalingstatechange",
(ev) => {
switch (pc.signalingState) {
case "stable":
updateStatus("ICE negotiation complete");
break;
}
},
false,
);
使用 onsignalingstatechange
,它看起来像这样
js
pc.onsignalingstatechange = (ev) => {
switch (pc.signalingState) {
case "stable":
updateStatus("ICE negotiation complete");
break;
}
};
规范
规范 |
---|
WebRTC:浏览器中的实时通信 # event-signalingstatechange |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。