javascript|window
網頁都是建立在視窗之上的,任何有關網頁的事情,都與視窗有關。下面首先讓我們熟悉一下大家常用的Internet Explorer的基本結構。
正常情況下,開啟的視窗都有如下四部分:
標題列(title):該視窗顯示標題的地方
控制區:各種按鍵、菜單
視窗:瀏覽器上最大的那一部分,不用多說了吧!
狀態列(status):顯示相應系統資訊以及JavaScript資訊的地方 在預設情況下,開啟的新視窗都含有以上部分。但是當用到windows.open()時,我們就可以控制新開啟的視窗的風格了。
文法:
oNewDoc = document.open(sUrl [, sName] [, sFeatures] [, bReplace]) |
說明:
sURL |
可選。字串--指定新的文檔的URL地址。如果沒有指定這一項,那麼將會是一個空的(about:blank)。 |
sName |
可選。字串--新產生視窗的名字。可以用作form或者a中Target的值。 |
blank |
sURL被載入到一個新的未命名的視窗。 |
_media |
sURL被載入到一個媒體欄中。(僅適合IE6以及以後版本瀏覽器) |
_parent |
sURL被載入到目前架構的上層架構上。如果沒有上層架構,則此項的值與_self的值相同。 |
_search |
sURL被開啟在瀏覽器的尋找視窗。(僅適合IE5以及以後的瀏覽器) |
_self |
sURL在當前的視窗上開啟,覆蓋以前的內容。 |
_top |
sURL可能會載入到任何架構支架(Frameset)上,如果沒有定義Frameset,此項值與_self的值相同。 |
sFeatures |
可選。字串--列出對象表並用逗號分開。每一項都有自己的值,他們將被分開(如:"fullscreen=yes, toolbar=yes")。下面是被支援的各種特性。 |
channelmode = { yes | no | 1 | 0 } |
是否在視窗中顯示階梯模式。預設為no。 |
directories = { yes | no | 1 | 0 } |
是否在視窗中顯示各種按鈕。預設為yes。 |
fullscreen = { yes | no | 1 | 0 } |
是否用全屏方式顯示瀏覽器。預設為no。使用這一特性時需要非常小心。因為這一屬性可能會隱藏瀏覽器的標題列和菜單,你必須提供一個按鈕或者其他提示來協助使用者關閉這一瀏覽視窗。ALT+F4可以關閉視窗。一個全屏視窗必須使用階梯(channelmode)模式。 |
height = number |
指定視窗的高度,單位是像素。最小值是100。 |
left = number |
指定視窗距左邊框的距離,單位是像素。值必須大於或者等於0。 |
location = { yes | no | 1 | 0 } |
指定是否在視窗中顯示地址欄。預設為yes。 |
menubar = { yes | no | 1 | 0 } |
指定是否在視窗中顯示功能表列。預設為yes。 |
resizable = { yes | no | 1 | 0 } |
指定是否在視窗中顯示可供使用者調整大小的控制代碼。預設為yes。 |
scrollbars = { yes | no | 1 | 0 } |
指定是否在視窗中顯示橫向或者縱向捲軸。預設為yes。 |
status = { yes | no | 1 | 0 } |
指定是否在視窗中顯示狀態列。預設為yes。 |
titlebar = { yes | no | 1 | 0 } |
指定是否在視窗中顯示標題列。在非調用HTML Application或者一個對話方塊的情況下,這一項將被忽略。預設為yes。 |
toolbar = { yes | no | 1 | 0 } |
指定是否在視窗中顯示工具列,包括如前進、後退、停止等按鈕。預設為yes。 |
top = number |
指定視窗頂部的位置,單位是像素。值必須大於或者等於0。 |
width = number |
指定視窗的寬度,單位是像素。最小值是100。 |
bReplace |
可選。當sURL被載入到同一視窗時,這個布爾型變數指定是否這個sURL建立立一個條目,或者是加到目前該視窗的記錄上。 |
true |
sURL覆蓋當前文檔的曆史紀錄。 |
false |
sURL在記錄中建立一個新的條目。 |
注釋:
預設情況下,open方法建立一個擁有預設寬度、高度、菜單以及工具列的視窗。你可以指定其中任何一項或者多項特徵參數。這些參數是由一個或多個字串所組成的。
當一旦有特徵參數被指定,其他沒有被指定的特徵參數全部被禁止。因此,當用到特徵參數,就需要定義所有在視窗中需要用到的其他特徵參數。如果沒有指定特徵參數,那麼所有的特徵將會被保留原始的預設值。除了給特徵參數指定新值之外,還可以簡單的羅列特徵名稱來使得視窗的相應特徵有效。
樣本:
window.open("Sample.htm",null, "height=200,width=400,status=yes,toolbar=no,menubar=no,location=no");
|
在例子中,建立了一個包含Sample.htm的新視窗。這個新視窗有200像素寬和400像素高,擁有狀態列,但是沒有工具列、功能表列和地址欄。以上就是相應代碼。
下面給出一個較為完整的例子,供大家參考新視窗的產生方法。
<html> <head> <title>Open Window</title> <script language="JavaScript"> function OpenWindow() { thisWin = window.open("", null, "width=300,height=400") thisWin.document.write("<head><title>newWindow</title></head>") thisWin.document.write("<body><center>This is a new window!</center></body>") } </script> </head>
<body> <center> <input type="button" value="Creat New Window" onClick="OpenWindow()"> </center> </body> </html> |
例子中的this.document.write是向新產生的視窗中寫入代碼,如果不這樣,新產生的視窗將會顯示錯誤。
產生新的視窗是比較簡單的,大家只要熟練掌握上面介紹的特徵,基本上就可以說掌握了新視窗的產生方法。
註:此系列JavaScript介紹是面向新手的,可以說我介紹的是最最基礎的東西。目的只是想讓那些正在學習網頁製作的人能夠有更快的提高。只能說面向的對象不同,所以水平也是不同,敬請各位高手笑納。