JavaScript窗口打開與關閉及如何使用opener使子窗口對父窗口進行操作


一、打開與關閉窗口

  1.打開窗口:可以使用window對象中的Open()方法。

newWindow = window.open(url,windowname,location);

    參數說明:

      url: 目標窗口的URL(可以是網站地址,也可以是文檔在電腦中的位置),如果其為空字符串,則在瀏覽器頁打開一個空白頁

          注意:使用open()對方法在完成對web文檔的寫操作后,要是有close()方法實現對輸出流的關閉;

             使用open()方法打開新流時,可以為文檔指定一個有效的文檔類型,包含text/html,text/gif,text/xim...等

      windowname: 可選參數,window對象名稱,其值為下述名稱時有特殊含義

          _blank:在新窗口顯示目標網頁  

          _self:在當前窗口顯示目標網頁  

          _top:框架網頁中在上部窗口中顯示目標網頁

          new:在新窗口顯示目標網頁

      location:打開窗口的參數,可選參數列表如下

               

      舉一個例子:

<script type="text/javascript"> 
    window.open('http://www.baidu.com','_blank','width=300,height=200,top=100,left=200);
</script>

 

    2.關閉窗口:

      a.關閉當前窗口可以使用  window.close(),  close(), this.close() 三種方法中的任意一種

     b.關閉子窗口可以用 windowname.close(),  windowname是指已打開窗口的句柄,

      下面的例子:程序運行時點擊主窗口按鈕會自動關閉子窗口

<form>
<input type="button" value="關閉子窗口" onClick="chiClose()">
</form>

<script>
var newWin = window.open("new.html","new","width=200,height=200";
function chiClose(){
    newWin.colse()
}
</script>

 

二、通過子窗口改變父窗口的內容

  可以使用window.opener,下面是簡介:

    window.opener 實際上就是通過window.open打開的窗體的父窗體。

      比如在父窗體parent.html里面通過 window.open("child.html"),那么在child.html中 window.opener就代表parent.html,可以通過這種方式設置父窗體的值或者調用js方法。

      如:1,window.opener.test();   //調用父窗體中的test()方法

        2.window.opener.location.reload();  // 刷新父窗口

          3.如果parent.html中存在id為“tb”的textbox,可以在子窗口中通過indow.opener.document.getElementById("tb").value = "輸入的數據"來改變textbox的值

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM