使用$(parent.window).height()

时间:2017-04-03 20:56:09

标签: javascript jquery dom iframe

我有一个页面有时会加载到iframe中,有时只是自己加载,具体取决于与此问题无关的某些参数。在这两种情况下,我都希望获得视口的高度,因此使用$(parent.window).height()。这似乎在两种情况下都会返回正确的数字(进出iframe),但我只是想在不在iframe中的页面中使用$(parent.window).height()检查是否存在任何潜在的陷阱 - 即页面技术上没有父母。

否则我可以分别为if $(parent.window).height()$(window).height()构建一个if..else for if和out iframe,但这是必要的吗?我可以使用$(parent.window).height()来涵盖这两种情况吗?

2 个答案:

答案 0 :(得分:1)

docs

  

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

所以你好,window.parent将是对父母的引用,如果存在,如果不存在,则它是对当前窗口的引用。
不需要条件来检查窗口是否实际上具有使用window.parent属性的父级,只要它可能是返回的当前窗口并不重要。

答案 1 :(得分:0)

您可以使用window.top来引用最顶层的窗口。无论页面是正常打开,还是在框架中,还是在嵌套框架中,它都将始终引用顶部窗口。