Js中的window.parent ,window.top,window.self 详解

简介:

在应用有frameset或者iframe的页面时,parent是父窗口,top是最顶级父窗口(有的窗口中套了好几层frameset或者iframe),self是当前窗口, opener是用open方法打开当前窗口的那个窗口。

window.self

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

语法:window.self

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

window.top

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

语法:window.top

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

window.parent

功能:返回父窗口。

语法:window.parent

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

在框架网页中,一般父窗口就是顶层窗口,但如果框架中还有框架,父窗口和顶层窗口就不一定相同了。

判断当前窗口是否在一个框架中:

<script type="text/javascript">
    var b = window.parent==window.self;
    document.write( "当前窗口是否是底层窗口:"+b );
</script>

你应当将框架视为窗口中的不同区域,框架是浏览器窗口中特定的部分。一个浏览器窗口可以根据你的需要分成任意多的框架,一个单个的框架也可以分成其它多个框架,即所谓的嵌套框架。

parent与opener的区别:
parent指父窗口,在frameset中,frame的parent就是frameset窗口。
opener指用window.open方式创建的新窗口对应的原窗口。
parent是相对于框架来说父窗口对象。
opener是针对于用window.open打开的窗口来说的父窗口,前提是window.open打开的才有。
附:Window对象、Parent对象、Frame对象、Document对象和Form对象的阶层关系。
Window对象→Parent对象→Frame对象→Document对象→Form对象。
如下: parent.frame.document.forms[0].elements[0].value。



本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/5809713.html,如需转载请自行联系原作者

相关文章
|
7月前
|
人工智能 IDE 开发工具
寻找Cursor的替代品:10款AI编程工具深度评测与推荐·优雅草卓伊凡
寻找Cursor的替代品:10款AI编程工具深度评测与推荐·优雅草卓伊凡
5217 18
寻找Cursor的替代品:10款AI编程工具深度评测与推荐·优雅草卓伊凡
|
监控 负载均衡 Java
微服务架构下的服务治理与监控
微服务架构下的服务治理与监控
636 0
|
Prometheus 监控 Cloud Native
Prometheus版本
Prometheus版本
189 2
|
Linux Go iOS开发
Go语言新手指南:正确使用GOPATH的步骤
Go语言新手指南:正确使用GOPATH的步骤
6597 0
|
前端开发 API 开发工具
文件目录规范
规范、整洁的文件目录,让人心情愉悦的同时,还能降低维护的难度,增加项目的可读性。
echarts如何设置滚动条(dataZoom),实现横向或纵向滚动
echarts如何设置滚动条(dataZoom),实现横向或纵向滚动
echarts如何设置滚动条(dataZoom),实现横向或纵向滚动
基于 Vue2.X/Vue3.X 项目引入 vue-code-diff/v-code-diff 代码差异插件并使用
本文介绍了如何在Vue2.X和Vue3.X项目中引入并使用`vue-code-diff`和`v-code-diff`代码差异插件来展示和比较代码变化。
1421 0
基于 Vue2.X/Vue3.X 项目引入 vue-code-diff/v-code-diff 代码差异插件并使用
|
人工智能 监控 供应链
信息系统项目管理师重点内容汇总(第十三天)
【2月更文挑战第2天】乘风破浪会有时,直挂云帆济沧海
1157 5
信息系统项目管理师重点内容汇总(第十三天)

热门文章

最新文章