使用Javascript访问Parent中的Iframe变量

时间:2012-05-16 15:46:34

标签: javascript variables iframe

我知道Stack Overflow上已经存在非常类似的问题了,但是我已经尝试了很多,但我什么都没得到。我正试图从子窗口中获取一个变量,以便在父窗口中使用。

在child.html头标记

<script type="text/javascript">
    var myVar="1";
</script>

在parent.html中

<script type="text/javascript">
function load()
{
    var scroll="0"; 
    scroll = window.myIframe.myVar;
    if (scroll == "0") DO SOMETHING;
    else DO SOMETHING ELSE;
}
</script>
<iframe src="child.html" name="myIframe" onload="load()">
<p>Your browser does not support iframes.</p>
</iframe>

无论我尝试什么,我都无法滚动来从子iframe中获取myVar变量。这几乎是Stack Overflow和其他人们认为完美工作的论坛上的例子。任何想法我做错了什么?

修改:它们位于同一个域中。

2 个答案:

答案 0 :(得分:1)

尝试在iframe中加载页面时从子项内部访问oad()。

加入儿童:

<body onload="parent.load()">

此外,您可以更改要传递的代码并将变量作为参数加载(prm)。

答案 1 :(得分:0)

我离线尝试了您的代码,在访问

时出现“不安全访问”错误
window.myFrame

本地页面可能很棘手,但是当我将相同的文件放在网上时,它们运行良好,域和端口匹配。 仍然我觉得在iframe上使用name =“...”有点奇怪,我会使用ID,但这似乎并不打扰chrome,我可以通过父或子上的onload访问变量。 / p>