javascript - Iframe/Popup 重定向开启窗口

标签 javascript html iframe popup window.open

我有一个位于 x.com 的页面。此页面上有一个按钮,单击该按钮后,将启动一个新窗口(使用 javascript 的 window.open() 方法)到位于 z.com 的页面。弹出窗口执行一些操作,然后根据弹出窗口中定义的一些参数将原始窗口(打开窗口,x.com)重定向到不同的页面。

这在 Firefox/Chrome 中工作正常,但在 IE 中不行。在 IE(特别是 8,但我相信 7 也有这个问题)中,原始窗口(打开器)不会重定向。相反,会出现一个新窗口,并且该窗口会被重定向。

我尝试了许多不同的方法来尝试让它发挥作用,包括将弹出窗口更改为页面上加载的 iframe,并在弹出窗口/iframe 调用的开启器上添加一个函数。问题似乎是 IE 拒绝允许跨域站点通过 javascript 相互通信。

有办法解决这个问题吗?如何让父窗口根据弹出窗口或 iframe 中的参数重定向到页面?

编辑:

这里是一些示例代码:

在domainA.com 的页面中,我有以下内容:

<img src='/images/test.png' onclick="window.open('http://www.domainB.com/item.aspx', 'name', 'width=100,height=100,menubar=no,status=no,toolbar=no');" />

在domainB.com 上的item.aspx 中,我在javascript 中包含以下内容:

opener.location.href = 'http://www.somethingelse.com/';

在 Firefox/Chrome 中,这工作得很好。在 IE 中,当domainB.com尝试在opener(又名父窗口,即domainA.com)上设置location.href时,它会打开一个新窗口,这不是我想要的。我希望它将 opener(父窗口)重定向到我指定的 URL。

巴拉

最佳答案

您好,我通过执行以下操作解决了我的问题 而不是使用 window.opener.location = "....

使用window.opener.document.location =“url”。这对我有用。

另一件事是确保您没有从 http 重定向到 https,这也会导致它崩溃。

干杯

关于javascript - Iframe/Popup 重定向开启窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3018470/

相关文章:

html - 将固定元素覆盖在 Chrome 中不工作的亲戚 parent 身上

javascript - 使用 iframe-resizer 插件高度为 0 的 iframe

javascript - 在 iframe 中打开一个 asp.net 页面

javascript - 检查字符是否为数字?

javascript - 如何在 React 应用程序中分离路由

javascript - 我可以将一组对象放入一个 JSON 对象中吗?

java - 将 JSP 文件包含在另一个 JSP 文件中时出现 iFrame 浏览器问题

javascript - 如何识别 FlipBoard 或 MobileRss 中的自定义 UIWebView

javascript - 计算 HTML 中选中复选框的数量

jquery - 添加到文本区域的所有行之前