Giao tiếp hai chiều giữa các bối cảnh duyệt được gọi là tin nhắn kênh. Nó hữu ích cho việc giao tiếp giữa nhiều nguồn gốc.
Trong khi tạo messageChannel, nó tạo nội bộ hai cổng để gửi dữ liệu và chuyển tiếp đến một ngữ cảnh duyệt khác.
- postMessage () - Đăng kênh ném tin nhắn
- start () - Nó gửi dữ liệu
- đóng () - 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.
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);