簡體   English   中英

child.postMessage 在 Microsoft Edge 中的 IE11 兼容 web 應用程序中不起作用

[英]child.postMessage not working in IE11 compatible web application in Microsoft Edge

我正在嘗試在兼容 IE 11 的 web 應用程序和使用 window.open 打開的彈出窗口 window 之間進行通信。 下面是我在 IE11 兼容 web 應用程序中使用的代碼:

var options = 'titlebar=no,resizable=no';
var url = '<different app url but within same org>';
var child = window.open(url,'window',options);
child.postMessage({message: 'requestResult'},'*');

這在 chrome 和 IE 中有效,但在 Microsoft Edge 中失敗。 我無法在 Edge 的子彈出窗口 window 中收到消息。 任何人都可以檢查並告訴我為什么它在 Edge 中失敗。

我認為window.open()打開的頁面應該在 Edge 而不是 Edge IE 模式下運行。 如果是這種情況,您需要在Edge IE模式站點列表中配置打開的頁面來實現您的需求。

你甚至可以簡單地嘗試 output the child window handle: child object。你會發現它是Null而不是 [window object]。 這是因為這兩個頁面在不同的瀏覽器(IE 和 Edge)中運行。

有關如何配置 IE 模式的更多詳細信息,您可以參考此文檔: 配置 IE 模式策略

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM