HTML5 中瀏覽上下文之間的雙向通訊


瀏覽上下文之間的雙向通訊稱為通道訊息傳遞。它適用於跨多個來源的通訊。

在建立 messageChannel 時,它會在內部建立兩個埠以傳送資料並轉發到另一個瀏覽上下文。

  • postMessage() − 透過通道釋出訊息
  • start() − 它傳送資料
  • close() − 它關閉埠

在此場景中,我們正在從一個 iframe 向另一個 iframe 傳送資料。在這裡我們正在函式中呼叫資料並將資料傳遞給 DOM。

var loadHandler = function(){
   var mc, portMessageHandler;
   mc = new MessageChannel();
   window.parent.postMessage('documentAHasLoaded','http://foo.example',[mc.port2]);
   portMessageHandler = function(portMsgEvent){
      alert( portMsgEvent.data );
   }
   mc.port1.addEventListener('message', portMessageHandler, false);
   mc.port1.start();
}
window.addEventListener('DOMContentLoaded', loadHandler, false);

更新於: 2020 年 1 月 29 日

291 次瀏覽

開啟你的職業生涯

完成課程,獲得認證

開始
廣告
© . All rights reserved.