这个真让我头疼:
使用javascript(假设在page1.html上)我使用类似于下面的代码来启动一个新窗口:
var popwindow = window.open("http://www.stackoverflow.com");
然后,我将 popwindow
变量传递给一个使用 setTimeout
每 3 或 4 秒重复一次的函数(我认为这部分不太重要)。这个小循环代码的作用是(应该)检查弹出窗口的 location
对象,以查看 url 何时更改并包含某些特定的查询字符串变量。
在大多数情况下,这是有效的;代码重复,并且使用 firebug,我可以看到窗口对象正在按其应有的方式传递。
我的问题是,每当我尝试对 popwindow.location.href
或 popwindow.location.search
进行任何访问时,JavaScript 就会崩溃。我什至只是尝试自己执行一个 popwindow.location.toString()
来获取这些内容,但这也会崩溃。
当我使用 firebug 时,我可以看到我尝试访问的 location
对象是合法的 location
实例;当我暂停脚本时,firebug 允许我浏览 location
对象的字段。然而,当我尝试访问这些东西(我不是写信给它们,只是读取值)时,它永远不会工作......如果它有帮助,我正在使用最新版本的firefox(我相信是5.0)。
最佳答案
如果引用的窗口与您正在运行的脚本所在的窗口不在同一域中,则浏览器将不允许您访问跨域窗口。它会抛出异常。
关于javascript window.location 在 Firefox 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6850349/