Javascript跨域问题
我们的网站提供了一个安装在页面中的小部件(一段Javascript,它编写一个iframe元素并在其中呈现内容,您可以看到rss、图像和其他内容) 在用户做了一些事情之后,我需要将页面(小部件所在的位置)重定向到另一个位置,但是使用Javascript跨域问题,javascript,cross-domain,Javascript,Cross Domain,我们的网站提供了一个安装在页面中的小部件(一段Javascript,它编写一个iframe元素并在其中呈现内容,您可以看到rss、图像和其他内容) 在用户做了一些事情之后,我需要将页面(小部件所在的位置)重定向到另一个位置,但是使用top.document.location是禁止的,因为页面和小部件生成的iframe位于不同的位置,并且使用窗口。open通常被弹出窗口拦截器阻止 我怎么做?试试: window.location.href = "url"; 虽然不允许从顶部窗口读取属性,但其中
top.document.location
是禁止的,因为页面和小部件生成的iframe位于不同的位置,并且使用窗口。open
通常被弹出窗口拦截器阻止
我怎么做?试试:
window.location.href = "url";
虽然不允许从顶部
窗口读取属性,但其中一些属性是可以写入的,其中之一是位置
干脆
top.location = "http://foo/bar";
它会重新定向的。谢谢您的更正,但是我找不到任何关于只写属性的可靠文档(例如MDC、W3C、Quirksmode,甚至Wikipedia)。你有关于这方面的官方文档的链接吗?@Matt,没有,W3规范没有涵盖这一点-这是不同浏览器供应商在实施相同来源策略(这也不是任何规范的一部分)时所允许的行为。但是
location
是唯一允许导航的属性(FF2中与frameElement相关的“bug”和IE6-7中的window.opener除外)。