頁面事件
更新時間:2023-09-19 11:51:07
作用
在將直播後台 iframe 到其他頁面時,可以監聽到新頁面的開啟事件,從而由父頁面控制。
目前只支援在開啟直播監控頁時收到事件。
詳情
設定步驟
- iframe 方式嵌入直播後台時需要帶上
?isBrowser=false,如:
https://console.polyv.net/live/index.html?isBrowser=false#/channel
注意,需要把?isBrowser=false放在 URL 的 hash 值前面。
- 在直播後台把需要使用 iframe 嵌套直播後台的父頁面網域設定為安全網域。只有配置了安全網域的,才會在開啟直播監控頁時收到對應的事件。
- 在父頁面監聽事件:
window.addEventListener(
"message",
(event) => {
// 通过 event.data 可以获取到事件数据,event.data 中包含两个属性:
// 1. event.data.source 事件数据来源,值为 'polyv-live-admin' 时表示来自保利威直播后台
// 2. event.data.url 需要打开新页面的 URL
// 先判断数据来源是否符合预期
if (event.data.source === 'polyv-live-admin') {
// 打开页面(或进行其他处理)
window.open(event.data.url);
}
},
false,
);
