我有一个javascript脚本正在尝试访问父级的iframe中运行,但是我收到以下错误:
Unsafe JavaScript attempt to access frame with URL mysite.com from frame with URL myothersite.com?. Domains, protocols and ports must match.
iframe html位于不同的域名,但我认为这不重要。这是生成JS错误的代码:
var parent_site = parent.document;
有解决方法吗?
答案 0 :(得分:0)
如果父域是iframe域的尾随部分(即,iframe是child.parent.com,而parent是parent.com),则可以使用document.domain = "parent.com"
设置iframe文档的域,并避免问题
如果父级和iframe的域名不相关,则无法解决此问题。
答案 1 :(得分:0)
对CORS(跨域资源共享)进行一些研究:http://www.w3.org/TR/cors/
您基本上需要将其添加到父域的.htaccess中:
Header set Access-Control-Allow-Origin *
Header set Access-Control-Allow-Headers x-requested-with
理想情况下,您要将*
替换为您要允许访问的域。