RTCIceTransport: gatheringstatechange 事件
當 gatheringstatechange 事件傳送給 RTCIceTransport 時,它的 ICE 候選收集狀態發生變化。
收集狀態(其實際狀態可在傳輸物件的 gatheringState 屬性中找到)表示 ICE 代理是否已開始在此傳輸上收集候選,如果是,是否已完成收集。
此事件不可取消,也不會冒泡。
語法
在諸如 addEventListener() 之類的方法中使用事件名稱,或設定事件處理程式屬性。
js
addEventListener("gatheringstatechange", (event) => { })
ongatheringstatechange = (event) => { }
事件型別
一個通用的 Event。
示例
此示例在與給定 RTCPeerConnection 關聯的每個 RTCRtpSender 上為 gatheringstatechange 事件建立了一個處理程式。在這裡,呼叫 addEventListener() 方法來新增 gatheringstatechange 事件的監聽器。
js
pc.getSenders().forEach((sender) => {
sender.transport.iceTransport.addEventListener(
"gatheringstatechange",
(ev) => {
let transport = ev.target;
if (transport.gatheringState === "complete") {
/* this transport has finished gathering candidates,
but others may still be working on it */
}
},
);
});
同樣,您也可以使用 ongatheringstatechange 事件處理程式屬性。
js
pc.getSenders().forEach((sender) => {
sender.transport.iceTransport.ongatheringstatechange = (ev) => {
let transport = ev.target;
if (transport.gatheringState === "complete") {
/* this transport has finished gathering candidates,
but others may still be working on it */
}
};
});
規範
| 規範 |
|---|
| WebRTC:瀏覽器中的即時通訊 # event-icetransport-gatheringstatechange |
| WebRTC:瀏覽器中的即時通訊 # dom-rtcicetransport-ongatheringstatechange |
瀏覽器相容性
載入中…