在JavaScript中,打開和關閉新的窗口,這是很常見的一種操作。
在 學習網的JavaScript在線測試工具中,當點擊“調試代碼”按鈕時,就會打開一個新的窗口,並把HTML文檔輸出到新的頁面中去。這裡面涉及的方法,就是這一節我們要說到的“使用JavaScript打開和關閉窗口”。
在JavaScript中,我們可以使用window對象中的open()方法來打開一個新窗口。
語法:
window.open(URL, 窗口名稱, 參數);
說明:
URL:指的是打開窗口的地址,如果URL為空字符串,則浏覽器打開一個空白窗口,並且可以使用document.write()方法動態輸出HTML文檔。
窗口名稱:指的是window對象的名稱,可以是a標簽或form標簽中target屬性值。如果指定的名稱是一個已經存在的窗口名稱,則返回對該窗口的引用,而不會再新打開一個窗口。
參數:對打開的窗口進行屬性設置。
這些可選參數都不是那麼常用,大家不記住也沒啥關系,以後需要的時候回到這裡查詢一下就OK了。
下面舉幾個常用的窗口打開的例子:
(1)打開一個新窗口:
window.open("http://www.lvyestudy.com","","");
上面是打開一個新窗口,並且在新窗口加載 學習網首頁。
(2)打開一個指定位置的窗口:
window.open("http://www.lvyestudy.com ","","top=200,left=200");
(3)打開一個指定大小的窗口:
window.open("http://www.lvyestudy.com ","","width=200,height=200");
(4)打開一個固定大小的窗口:
window.open("http://www.lvyestudy.com ","","width=200,height=200,resizable");
(5)打開一個顯示滾動條的窗口:
window.open("http://www.lvyestudy.com ","","width=200,height=200,scrollbars");
舉例:
在線測試<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script type="text/javascript"> function openWindow() { window.open("http://www.lvyestudy.com ", "", "width=200,height=200,resizable"); } </script> </head> <body> <input id="btn" type="button" value="打開窗口" onclick="openWindow()"/> </body> </html>
在浏覽器預覽效果如下:
分析:
此外還需要注意一點,window.open()方法中的參數width和height設置的時候是不需要加單位(px)的,浏覽器默認就已經給我們添加單位。
在JavaScript中,我們可以使用window對象中的close()方法來關閉一個窗口。
在JavaScript中,如果想要關閉當前的窗口,有3種方式:
window.close(); close(); this.close();
所謂的“關閉子窗口”就是關閉之前使用window.open()方法動態創建的子窗口。
語法:
窗口名.close();
說明:
使用window.open()方法動態創建的窗口時,我們可以將窗口以變量形式保存,然後再使用close()方法關閉動態創建的窗口。
舉例:
在線測試<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script type="text/javascript"> var newWindow = window.open("http://www.lvyestudy.com","","width=200,height=200"); function closeWindow() { newWindow.close(); } </script> </head> <body> <input type="button" value="關閉窗口" onclick="closeWindow()"/> </body> </html>
在浏覽器預覽效果如下:
父窗口
子窗口
分析:
你會看到,浏覽器會打開2個窗口。當我們點擊“關閉窗口”按鈕後,被打開的“子窗口”就會被關閉。