首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >window.parent不是未定义的吗?

window.parent不是未定义的吗?
EN

Stack Overflow用户
提问于 2013-12-24 08:05:25
回答 1查看 4.2K关注 0票数 5

我只有一页。没有Iframes:

我需要检查页面是否在Iframe中,所以我做了如下操作:

if (!window.parent) {...not in iframe...}

但是,window.parent似乎从来不是undefined,总是引用(self===parent)窗口。

那是为什么?

这个窗口没有(!)父级。那么为什么要定义它呢?

NB

  • 我知道window.window.w....是一样的是有原因的。但我说的是父母(!)
  • 我知道我可以检查这个条件:

if (window.self===window.parent)...

但我的问题仍然存在。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-24 08:12:23

来自MDN

如果窗口没有父窗口,则其父属性是对其自身的引用。

事情就是这样。

在他们的例子中,它们提供了一种实现您的需求的方法(与您的解决方案略有不同):

代码语言:javascript
复制
if (window.parent != window.top) {
  // we're deeper than one down
}

更多参考资料:

W3

如果没有父文档,窗口对象的父属性的值必须是父文档的窗口对象或文档的窗口对象

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20757212

复制
相关文章

相似问题

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