4

如果我有一个带有框架集和一些在 head 标记中定义的 javascript 的文档,例如:

<html>
 <head>
  <script>
     function foo() {}
  </script>   
 </head>
 <frameset>
    <frame src="A.html">
 </frameset>     
</html>

我已经假设框架(A.html)在其父级之前触发其 onLoad 事件处理程序。我几乎肯定这是一个安全的假设。但是,假设 A.html 的脚本上下文可以安全地访问父窗口头部中定义的所有脚本代码是否安全?

我可以做出哪些假设?

4

2 回答 2

1

根据此页面,您可以安全地访问parent中的脚本,它是引用框架的父框架集文档的对象。

从一个小的本地测试来看,父母的 onload 事件似乎没有触发,但它的脚本标签似乎在加载子框架之前已经被处理了。

这些天框架集不受欢迎,因此请确保这是正确的方法。

于 2009-03-23T19:21:31.703 回答
1

parent框架脚本将能够通过引用访问其父 JS 空间。(但前提是这两个文档位于同一主机上 - 它们在您的精简示例中)。

我不会在A.html之后依赖父级的onLoad触发,尽管正如 Phil 提到的,脚本将首先处理 - 这是因为内联脚本评估是一个阻塞操作。

于 2009-03-25T06:30:28.093 回答