0
私のiframeから親ウィンドウへのpostmessage呼び出しが3回あります。これら3つは、Firefoxで逆に実行されます。これには回避策がありますか?Window.parent.PostMessageはFirefoxの逆順で動作します
私のiframeから親ウィンドウへのpostmessage呼び出しが3回あります。これら3つは、Firefoxで逆に実行されます。これには回避策がありますか?Window.parent.PostMessageはFirefoxの逆順で動作します
はい、FirefoxでJavaScriptを1回実行するうちに複数のpostMessage
を使用すると、実行が完了するまでブラウザで処理されません。Firefoxでは、先入れ先出しではなく先入れ先出しである。
setTimeout
は、postMessage
通話の注文方法の1つです。 postMessage
ラッパーを使用して:
function postMessage(otherWindow, message, targetOrigin, transfer) {
setTimeout(
function() {
otherWindow.postMessage(message, targetOrigin, transfer);
},
0
);
}
これは、ブラウザが順番に実行するJavaScriptのその後の実行にすべてのあなたのpostMessage
呼び出しを延期します。