html中window对象top 、self 、parent 等属性

window对象用法: http://www.w3school.com.cn/htmldom/dom_obj_window.asp

top 属性返回最顶层的先辈窗口。

该属性返回对一个顶级窗口的只读引用。如果窗口本身就是一个顶级窗口,top 属性存放对窗口自身的引用。如果窗口是一个框架,那么 top 属性引用包含框架的顶层窗口。

下面的例子窗口是否在一个框架中,如果是,则跳出框架:

 

<html>
<head>
<script type="text/javascript">
function breakout(){
    if (window.top!=window.self) {
    window.top.location="tryjs_breakout.htm"
   }
}
</script>
</head>

<body>
<form>
Click the button to break out of the frame:
<input type="button" onclick="breakout()" value="Break out!">
</form>
</body>

</html>

出自w3c手册:http://www.w3school.com.cn/htmldom/prop_win_top.asp

其中的跳出框架 调整窗口的尺寸 把窗口调整为指定的尺寸  这几个例子也值得注意

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

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

window.top  功能:返回顶层窗口,即浏览器窗口。注:如果窗口本身就是顶层窗口,top属性返回的是对自身的引用。

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

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

 

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

<script type="text/javascript">
var b = window.top!=window.self;
document.write( "当前窗口是否在一个框架中:"+b );
</script>

 

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

 

 

 

 

 

posted @ 2013-12-31 15:25  廖凯林  阅读(1112)  评论(0编辑  收藏  举报