使用window.open()方法既可以導航到一個特定的URL,也可以開啟一個新視窗。這個方法接受四個參數:要載入的URL、視窗目標、一個特性字元以及一個表示新頁面是否取代瀏覽器記錄中當前載入頁面的布爾值。通常值傳遞第一個參數,最後一個參數只在不開啟新視窗的情況下使用。
如果window.open()傳遞了第二個參數,而且該參數是已有的視窗或架構中載入第一個參數指定的URL。
window.open("http://www.wrox.com/"."topFrame");
調用這行代碼,就如同使用者單擊了 href 屬性為 http://www.wrox.com/, target 屬性為 “topFrame”的連結。如果有一個名叫 “topFrame” 的視窗或者架構,就會在該視窗或架構載入這個 URL;否則,就會建立一個新視窗並將其命名為 “topFrame” 。此外,第二個參數也可以是下列任何一個特殊的視窗名稱: _self 、 _parent 、 _top 或 _blank 。
如果給 window.open() 傳遞的第二個參數並不是一個已經存在的視窗或架構,那麼該方法就會根據在第三個參數位置上傳入的字串建立一個新視窗或新標籤頁。如果沒有傳入第三個參數,那麼就會開啟一個帶有全部預設設定(工具列、地址欄和狀態列等)的新瀏覽器視窗(或者開啟一個新標籤頁——根據瀏覽器設定)。在不開啟新視窗的情況下,會忽略第三個參數。
第三個參數是一個逗號分隔的設定字串,表示在新視窗中都顯示哪些特性。下面列出了可以出現在這個字串中的設定選項。
fullscreen
yes 或 no 表示瀏覽器視窗是否最大化。僅限IE
height
數值 表示新視窗的高度。不能小於100
left
數值 表示新視窗的左座標。不能是負值
location
yes 或 no 表示是否在瀏覽器視窗中顯示地址欄。不同瀏覽器的預設值不同。如果設定為no,地址欄可能會隱藏,也可能會被禁用(取決於瀏覽器)
menubar
yes 或 no 表示是否在瀏覽器視窗中顯示功能表列。預設值為 no
resizable
yes 或 no 表示是否可以通過拖動瀏覽器視窗的邊框改變其大小。預設值為 no
scrollbars
yes 或 no 表示如果內容在視口中顯示不下,是否允許滾動。預設值為 no
status
yes 或 no 表示是否在瀏覽器視窗中顯示狀態列。預設值為 no
toolbar
yes 或 no 表示是否在瀏覽器視窗中顯示工具列。預設值為 no
top
數值 表示新視窗的上座標。不能是負值
width
數值 表示新視窗的寬度。不能小於100