前端开发

 首页 > 前端开发 > javascript > js如何判断window.parent、window.top、window.self 判断iframe 嵌套最新评论添加评论

js如何判断window.parent、window.top、window.self 判断iframe 嵌套最新评论添加评论

分享到:
【字体:
导读:
         [导读] js如何判断window.parent、window.top、window.self 判断iframe 嵌套 首先介绍 window.self,window.top,window.parent,window.opener 四个的作用区别; window.self,window.top 是打开模式,而 windo.parent,window.opener 是父...

js如何判断window.parent、window.top、window.self 判断iframe 嵌套


首先介绍 window.self,window.top,window.parent,window.opener四个的作用区别;


window.self,window.top 是打开模式,而 windo.parent,window.opener 是父页面的打开模式。


如果页面中有iframe或者framese时,parent是父窗口,top是最顶级父窗口(如果窗口中存在多层嵌套),self是当前窗口,opener是用open方法打开当前的窗口。


window.self


功能:是对当前窗口自身的引用。它和window属性是等价的。


语法:window.self


注:window、self、window.self是等价的。


window.parent


功能:返回父窗口。


语法:window.parent


注:如果窗口本身是顶层窗口,parent属性返回的是对自身的引用。


window.top


功能:返回顶层窗口,即浏览器窗口。


语法:window.top


注:如果窗口本身就是顶层窗口,top属性返回的是对自身的引用;如果窗口仅在一层iframe中,top属性与parent属性等价。


通过window.parent ,window.top,window.self可以分别获取当前窗口、父窗口、顶层窗口的对象引用,我们可以使用这三个对象判断是否应用有iframe嵌套或者是否有多层iframe嵌套或实现其它功能。


举例如下:


1、 if(window.top===window.self){
        // 当前窗口为顶级窗口,没有iframe应用
} else{
    //存在iframe应用
}


2、if((window.top === window.parent)||(window.top!=window.self)){
     //父窗口为顶级窗口,只有一层iframe嵌套
} else{
   //父窗口不是顶成窗口,存在多层iframe嵌套
}


3、使用不同对象的location. href实现嵌套中指定窗口的跳转;使用不同对象的location. reload()实现嵌套中指定窗口的刷新。


以上就是js如何判断window.parent、window.top、window.self 判断iframe 嵌套全部内容,感谢大家支持自学php网。

分享到:
纯js导出csv最新评论添加评论
原理很简单,主要通过浏览器URL能力,拼接好字符串后给超链接触发download事件即可,具体操作看下方源码。 通过将json遍历进行字符串拼接,将字符串输出到csv文件。 把下方源码粘贴到浏览器运行下就知道了。   使用a标签方式将json导出csv文件   导出                     function tab...
js发送post请求时候遇到&特殊字符转义报...
js发送post请求时候遇到&特殊字符转义报错解决方案, 在post给服务端时候有些格式需要前端手动拼接数据如:xxx&xxx,但是当遇到&字符就报错了。 可以利用转义思路去解决,如 & 转成 %26 其实不是丢失,比如 ‘+'它会当成连接字符来处理了。 一、替换成16进制字符,在这列几个常用的转换 + 空格 / ? % & = # %2B %...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……