首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript窗口对象

Javascript窗口对象
EN

Stack Overflow用户
提问于 2011-07-13 21:08:53
回答 2查看 5.1K关注 0票数 12

在Javascript中,假设我们有一个包含<iframe> (iframe.html)的主页(main.html)。

现在在这个iframe.html中,如果我们需要引用主页上的内容(main.html),我们能不能只指定window而不是parent.window

如果答案是我们需要编写parent.window,我想知道主页中的所有iframe是否都没有一个window对象引用。

虽然我确实理解document是特定于单个iframe的,但是window应该对所有人都是通用的……it...Please不是帮助我理解这个概念吗……

还有什么是window.parent的吗?如果是,它与parent.window有什么不同?

EN

Stack Overflow用户

回答已采纳

发布于 2011-07-13 21:13:17

window的概念与document捆绑在一起:每个document有一个window,每个window有一个document

这意味着拥有自己document<iframe>元素也有自己的window,就像弹出窗口或主导航窗口一样。

因此,您实际上必须使用window.parent来访问<iframe>元素的容器,就像您必须使用window.opener来访问弹出窗口的所有者一样。

EDIT: window.parentparent.window都是返回相同对象的有效表达式。这是因为window对象是脚本中的默认上下文(未限定名称被解析为window的成员),而window对象有一个引用自身的window属性。

因此,parent.window的计算结果是window.parent.window,它是与window.parent相同的对象。

也就是说,我确实更喜欢使用window.parent,以避免与额外的属性访问相关的(最小的)开销。

票数 10
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6679406

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档