简体   繁体   English

Edge-in-Edge-mode 和 Edge-in-IE-mode 之间如何通信?

[英]How to communicate between Edge-in-Edge-mode and Edge-in-IE-mode?

I have got a legacy system with a web page A which calls some other web page B. When the web page B is closed, the web page A must be refreshed, it has to read some stuff from the database which has been changed by B.我有一个带有 web 页面 A 的遗留系统,它调用其他一些 web 页面 B。当 web 页面 B 关闭时,必须刷新 web 页面 A,它必须从数据库中读取一些已被 B 更改的内容.

Until now, this is done by calling some function on page A when B is closed, via JavaScript. The function on page B is something like this:到目前为止,这是通过在 B 关闭时通过 JavaScript 调用页面 A 上的一些 function 来完成的。页面 B 上的 function 是这样的:

function goBack() { 
    window.opener.RefreshStuff();   <--- Calls RefreshStuff on page A 
    window.close();
}

This works well.这很好用。

From now on, page A shall run in Edge-in-IE-mode and page B shall run in Edge-in-Edge-mode.从现在开始,页面 A 将以 Edge-in-IE-mode 运行,页面 B 将以 Edge-in-Edge-mode 运行。 Edge-in-IE-mode is running in another process than Edge-in-Edge-mode. Edge-in-IE-mode 在另一个进程中运行,而不是 Edge-in-Edge-mode。 Therefore in the function goBack, the window.opener is not known anymore and the function goBack does not work anymore.因此,在 function goBack 中,window.opener 不再为人所知,function goBack 不再起作用。

I need some way to communicate between Javascript in page B, which runs in Edge-in-Edge-mode and Javascript in page A which runs in Edge-in-IE-mode.我需要某种方式在页面 B 中的 Javascript 之间进行通信,该页面以边缘边缘模式运行,而页面 A 中的 Javascript 以边缘边缘模式运行。

Can you help me?你能帮助我吗?

As far as I know, Edge and Edge IE mode actually run different browsers, so you can't get a handle to the IE window from Edge.据我所知,Edge 和 Edge IE 模式实际上运行不同的浏览器,因此您无法从 Edge 获取 IE window 的句柄。

You can try sharing cookies between Edge and IE, it may work for you, it needs to be configured through group policy, please refer to this document: Configure IE mode policy .你可以尝试在Edge和IE之间共享cookies,它可能适合你,它需要通过组策略进行配置,请参考这篇文档: 配置IE模式策略

Finally, set the source-engine="Both" attribute in the sites.xml file to share the cookie between Edge and IE of the stie you need.最后,在sites.xml文件中设置source-engine="Both"属性,在你需要的站点的Edge和IE之间共享cookie。 Just refer to this doc: Cookie sharing between Microsoft Edge and Inte.net Explorer .只需参考此文档: Microsoft Edge 和 Inte.net Explorer 之间的 Cookie 共享

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在 Edge IE 模式下检测浏览器 - Detecting browser in Edge IE mode 有没有办法以编程方式区分以 IE 模式运行的 Inte.net Explorer 和 Edge? - Is there a way to programmatically distinguish between Internet Explorer and Edge running in IE mode? 如何以编程方式退出 Edge 中的 Kiosk 模式 - How to exit Kiosk Mode in Edge programmatically 如何创建在IE = 11中使用边缘模式而在其他IE中使用IE = 6的站点 - How to create site which in IE=11 uses edge mode and in others IE use IE=6 在 MS Edge 中检测覆盖模式 - Detect overwrite mode in MS Edge 框架和Edge Extension内容脚本之间如何通信? - How to communicate between frame and Edge Extension content script? 当父页面以边缘模式运行时,iframe页面的IE 11文档模式 - IE 11 document mode for iframe page when parent page is running in edge mode 如何在micorostf edge(全屏模式)中隐藏html视频控件 - how to hide html video controls in micorostf edge (fullscreen mode) CSS如何在全屏模式下禁用Microsoft Edge媒体控件? - CSS how to disable microsoft edge media controls in fullscreen mode? 你能在Windows 10上使用JavaScript检测Edge和IE11中的“平板电脑模式”吗? - Can you detect “Tablet Mode” in Edge and IE11 using JavaScript on Windows 10?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM