【发布时间】:2013-10-28 01:28:29
【问题描述】:
我有一个主页,用于导航到 iframe
主页:1.html
其他 3 个页面:one.html、two.html、3.html。
代码
1.html
<html>
<body>
<div>
<ul>
<li style="float:left; margin:20px;"><a href="One.html" target="target">One</a></li>
<li style="float:left; margin:30px;"><a href="Two.html" target="target">Two</a></li>
<li style="float:left; margin:50px;"><a href="Three.html" target="target">Three</a></li>
</ul>
<iframe id="target"></iframe>
</div>
</body>
</html>
one.html
<html>
<body onload="try{alert(parent.location.href);} catch(e){alert(e);}">
1.html.
</body>
</html>
但是显示parent-文档的位置时出现问题。它会发出如下警告消息:
SecurityError: Blocked a frame with origin "null" from accessing a frame with origin "null". Protocols, domains, and ports must match.
任何人都可以在此错误的上下文中解释消息中使用的术语的含义,或者解释为什么会发生这种情况???
注意:未使用服务器
【问题讨论】:
-
这可能是你的问题。如果您从磁盘读取文件,我猜原点为空?根据浏览器的不同,您可能会使用一些选项来启动它以忽略相同的来源策略。
-
@plalx 如果我从我自己的本地文件系统访问文件,那么安全问题是什么???你能解释一下吗?
-
你说你可以访问另一个框架,你试过读取它的属性吗?
-
@plalx,对不起。刚才我注意到我只能使用语法
parent.frames['id']访问当前帧。
标签: javascript html google-chrome iframe