Computer >> Máy Tính >  >> Lập trình >> HTML

Đối tượng MessageChannel và MessagePort trong HTML5 là gì?


Trong khi tạo messageChannel, nó tạo nội bộ hai cổng để gửi dữ liệu và chuyển tiếp dữ liệu đó đến một ngữ cảnh duyệt web khác.

  • postMessage () - Đăng thông điệp lên kênh
  • start () - Nó gửi dữ liệu
  • close () - nó đóng các cổng

Trong trường hợp này, chúng tôi đang gửi dữ liệu từ iframe này sang iframe khác. Ở đây, chúng tôi đang gọi dữ liệu trong hàm và chuyển dữ liệu vào DOM.

Ví dụ

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