判断页面是否被包含在iframe中

来源:互联网 发布:腾讯网络大电影合作 编辑:程序博客网 时间:2024/05/30 22:58

如果页面中包含框架,则每个框架都拥有自己的window对象,并且保存在frames集合中,并可以通过数值索引或者name索引进行访问。如果frames的length为0,则代表这个页面中不包含iframe。


判断页面是否被包含在iframe中则需要使用到top这个属性,top对象始终指向最高(最外)层的框架,也就是浏览器窗口。

所以通过如下的判断:

window.top == window

就可以判断当前的页面是否在iframe中。但是,如果在引入iframe时,name属性设为top,则会覆盖top属性,导致这个判断出错。


另一种方法是通过frameElement属性进行判断,如果frameElement属性为null,则说明该页面不在iframe中。


经验证,top方法在IE6下可以使用,frameElement不可用。

原创粉丝点击