轉載: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.top!=window.self;
document.write( "當前窗口是否在一個框架中:"+b );
</script>
你應當將框架視為窗口中的不同區域,框架是瀏覽器窗口中特定的部分。一個瀏覽器窗口可以根據你的需要分成任意多的框架,一個單個的框架也可以分成其它多個框架,即所謂的嵌套框架。