【问题标题】:in a pop up after using window.location to redirect, window.close becomes undefined在使用 window.location 重定向后的弹出窗口中,window.close 变为未定义
【发布时间】:2012-09-09 22:06:51
【问题描述】:

这就是正在发生的事情......

我的网站重定向到使用window.location 重定向回我的网站的第三方网站。这一切都发生在一个弹出窗口中。

我面临的问题是在 Chrome 中,重定向后 window.closeundefined 以及其他一些属性,如 window.opener 知道如何关闭此窗口吗?

作为第三方网站,对重定向的发生方式没有太多控制。

我在我的一个页面中更改了window.location 以重定向到另一个页面,并且在该页面中这个问题是可重现的。

编辑:

问题不是window.location 重定向,而是其他问题...尝试进一步调试它,但找到了解决方案并在此问题中回答。

【问题讨论】:

    标签: javascript google-chrome redirect popup


    【解决方案1】:

    这个问题的第一个答案有效: Issue with window.close and chrome

    window.open('','_self', '');
    window.close();
    

    这行得通...我能想到的唯一原因是,在调用window.open 时,窗口对象会在弹出窗口中重新初始化,因此window.close() 不会返回undefined

    【讨论】:

      【解决方案2】:

      一旦打开的窗口导航到与父级不同的域,您就无法再从父级访问窗口。

      要解决此问题,您可以在您的网站上创建一个仅包含 iframe 的页面,并将 src 属性设置为相应的第 3 方网站 URL。

      【讨论】:

      • 我不是试图从父级访问,而是在弹出窗口中调用 window.close。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-08
      • 1970-01-01
      • 1970-01-01
      • 2010-10-19
      • 2019-03-18
      • 1970-01-01
      相关资源
      最近更新 更多