私はpostMessage
とMessageChannel
と混同しています。ここでpostMessageとMessageChannelでスタック
はMDNからいくつかのコードです:
var channel = new MessageChannel();
var para = document.querySelector('p');
var ifr = document.querySelector('iframe');
var otherWindow = ifr.contentWindow;
ifr.addEventListener("load", iframeLoaded, false);
function iframeLoaded() {
otherWindow.postMessage('Hello from the main page!', '*', [channel.port2]);
}
channel.port1.onmessage = handleMessage;
function handleMessage(e) {
para.innerHTML = e.data;
}
私はpostMessage
方法だけ引数、それはを取ることができることを示す上記のコードを取ることができます思ったが、第三については何もありません引数のpostMessage
メソッド。
だから私の質問があります
postMessage
メソッドの第三引数の意味は何ですか?はなぜ/とき、我々はMessageChannelを使用する必要があり、私は
MessageChannel
の使い方を知っているが、無用のようですか?
私のすべての混乱を解決しました。共にありがとう! – huachengzan