Atu*_*tul 111 javascript iframe webkit cross-domain
当我尝试从包含另一个域网址的iframe将哈希值设置为父网址时,我收到以下错误:
不安全的JavaScript尝试从URL"URL2"的框架访问URL"URL1"的框架.域,协议和端口必须匹配.
我该如何解决这个问题?
Sea*_*sey 123
从不同来源的子文档中,您不能访问顶部窗口的location.hash属性,但您可以设置该location属性本身.
这意味着,假设顶部窗口位置是http://example.com/page/,而不是做
parent.location.hash = "#foobar";
Run Code Online (Sandbox Code Playgroud)
你需要知道父母的位置和做
parent.location = "http://example.com/page/#foobar";
Run Code Online (Sandbox Code Playgroud)
由于资源未导航,因此将按预期工作,仅更改网址的哈希部分.
如果您使用它进行跨域通信,那么我建议使用easyXDM.
Evi*_*lMM 13
当两个帧具有不同的域 - >安全性时,不可能使用Crossframe-Scripting.
请参阅:http://javascript.about.com/od/reference/a/frame3.htm
现在回答你的问题:没有解决方案或解决方法,你应该检查你的网站设计为什么必须有来自不同域的两个框架来改变另一个框架的网址.
小智 9
当我尝试为iframe.src的域进行缓存时,我收到了相同的错误消息.
对我来说,答案是将iframe.src更改为SAME域上的URL,但实际上是一个到所需域的html重定向页面.然后另一个域出现在我的iframe中,没有任何错误.
工作就像一个魅力.:)
小智 6
解决方案可以是使用检索远程内容的本地文件
remoteInclude.php
<?php
$url = $_GET['url'];
$contents = file_get_contents($url);
echo $contents;
Run Code Online (Sandbox Code Playgroud)
HTML
<iframe frameborder="1" id="frametest" src="/remoteInclude.php?url=REMOTE_URL_HERE"></iframe>
<script>
$("#frametest").load(function (){
var contents =$("#frametest").contents();
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
175106 次 |
| 最近记录: |