溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

window.top、window.parent、window.open、window.opener

發(fā)布時間:2020-06-13 08:32:03 來源:網(wǎng)絡(luò) 閱讀:532 作者:lsieun 欄目:web開發(fā)


地址:http://blog.csdn.net/zdwzzu2006/article/details/6047632



在應(yīng)用有frameset或者iframe的頁面時,parent是父窗口,top是最頂級父窗口(有的窗口中套了好幾層frameset或者iframe),self是當(dāng)前窗口, opener是用open方法打開當(dāng)前窗口的那個窗口。

 

window.self

功能:是對當(dāng)前窗口自身的引用。它和window屬性是等價的。

語法:window.self

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

 


window.top

功能:返回頂層窗口,即瀏覽器窗口。

語法:window.top

注:如果窗口本身就是頂層窗口,top屬性返回的是對自身的引用。

 

window.parent

功能:返回父窗口。

語法:window.parent

注:如果窗口本身是頂層窗口,parent屬性返回的是對自身的引用。

在框架網(wǎng)頁中,一般父窗口就是頂層窗口,但如果框架中還有框架,父窗口和頂層窗口就不一定相同了。

 

判斷當(dāng)前窗口是否在一個框架中:

<script type="text/JavaScript">
var b = window.top!=window.self;
document.write( "當(dāng)前窗口是否在一個框架中:"+b );
</script>

你應(yīng)當(dāng)將框架視為窗口中的不同區(qū)域,框架是瀏覽器窗口中特定的部分。一個瀏覽器窗口可以根據(jù)你的需要分成任意多的框架,一個單個的框架也可以分成其它多個框架,即所謂的嵌套框架。


window.open()


https://developer.mozilla.org/en-US/docs/Web/API/Window/open


Loads a resource into either a new browsing context (such as a window) or one that already exists, depending on the specified parameters.

window.top、window.parent、window.open、window.opener



示例

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
    <title>window.open()和window.opener</title>
    <script type="text/javascript">
        var winName = "MyWindow";
        var wor = null; // windowObjectReference
        function btnBaiDu(){
            wor = window.open("http://www.baidu.com",winName);
        }
        function btnSina(){
            wor = window.open("http://www.sina.com",winName);
        }
        function btnClose(){
            wor.close();
        }
    </script>
</head>
<body>
    <input type="button" value="打開百度" onclick="btnBaiDu()"/>
    <br/>
    <input type="button" value="打開新浪" onclick="btnSina()"/>
    <br/>
    <input type="button" value="關(guān)閉窗口" onclick="btnClose()"/>
</body>
</html>

演示圖

window.top、window.parent、window.open、window.opener




Window.opener

https://developer.mozilla.org/en-US/docs/Web/API/Window/opener

Returns a reference to the window that opened this current window.

window.top、window.parent、window.open、window.opener


示例

window_opener.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
    <title>window.opener</title>
    <script type="text/javascript">
        alert("頁面加載!");
        function btnNewWindow(){
            window.open("testWindow.html","test");
        }
    </script>
</head>
<body>
    <input type="button" value="打開新窗口" onclick="btnNewWindow()"/>
</body>
</html>

testWindow.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
    <title>測試窗口</title>
    <script type="text/javascript">
        function btnClose(){
            window.opener.location.reload(true);
            window.close();
        }
    </script>
</head>
<body>
    <input type="button" value="關(guān)閉當(dāng)前窗口,并刷新父窗口" onclick="btnClose()"/>
</body>
</html>


演示效果圖

window.top、window.parent、window.open、window.opener




地址:https://developer.mozilla.org/en-US/docs/Web/API/Location/reload

Location.reload()

The Location.reload() method reloads the resource from the current URL. Its optional unique parameter is a Boolean, which, when it is true, causes the page to always be reloaded from the server. If it is false or not specified, the browser may reload the page from its cache.


window.top、window.parent、window.open、window.opener






向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI