如果父级本身也在iframe中,如何从iframe中的页面判断?
说明:
我的主页home.html
包含iframe
<iframe src="sample.html"></iframe>
我需要检测home.html
(即sample.html
的父级)是否在iframe中。
sample.html
中的代码:
if(self==window)
{
alert('home.html is not in iframe');
}
else
{
alert('home.html is in iframe');
}
我的问题不重复。这是一个不同的案例。
答案 0 :(得分:102)
如果窗口不是frame / iframe,则为true:
if(self==top)
如果您想查看给定窗口的父窗口是否为框架,请使用:
if(parent==top)
这是top
(窗口层次结构的最顶层窗口)和另一个窗口对象(self
或parent
)的简单比较。
答案 1 :(得分:32)
检查window.frameElement
是否为空并查看其nodeName属性是否为“IFRAME”:
var isInIframe = window.frameElement && window.frameElement.nodeName == "IFRAME";
答案 2 :(得分:23)
var isInIFrame = (window.location != window.parent.location);
if(isInIFrame==true){
// iframe
}
else {
// no iframe
}