Window 對象
Window 對象
Window 對象表示瀏覽器中打開的窗口。
如果文檔包含框架(frame 或 iframe 標簽),瀏覽器會為 HTML 文檔創建一個 window 對象,并為每個框架創建一個額外的 window 對象。
注釋:沒有應用于 window 對象的公開標準,不過所有瀏覽器都支持該對象。
IE:Internet Explorer, F:Firefox, O:Opera.
Window 對象集合
集合 | 描述 | IE | F | O |
---|---|---|---|---|
frames[] | 返回窗口中所有命名的框架。 該集合是 Window 對象的數組,每個 Window 對象在窗口中含有一個框架或 <iframe>。屬性 frames.length 存放數組 frames[] 中含有的元素個數。注意,frames[] 數組中引用的框架可能還包括框架,它們自己也具有 frames[] 數組。 | 4 | 1 | 9 |
Window 對象屬性
屬性 | 描述 | IE | F | O |
---|---|---|---|---|
closed | 返回窗口是否已被關閉。 | 4 | 1 | 9 |
defaultStatus | 設置或返回窗口狀態欄中的默認文本。 | 4 | No | 9 |
document | 對 Document 對象的只讀引用。請參閱 Document 對象。 | 4 | 1 | 9 |
history | 對 History 對象的只讀引用。請參數 History 對象。 | 4 | 1 | 9 |
innerheight | 返回窗口的文檔顯示區的高度。 | No | No | No |
innerwidth | 返回窗口的文檔顯示區的寬度。 | No | No | No |
length | 設置或返回窗口中的框架數量。 | 4 | 1 | 9 |
location | 用于窗口或框架的 Location 對象。請參閱 Location 對象。 | 4 | 1 | 9 |
name | 設置或返回窗口的名稱。 | 4 | 1 | 9 |
Navigator | 對 Navigator 對象的只讀引用。請參數 Navigator 對象。 | 4 | 1 | 9 |
opener | 返回對創建此窗口的窗口的引用。 | 4 | 1 | 9 |
outerheight | 返回窗口的外部高度。 | No | No | No |
outerwidth | 返回窗口的外部寬度。 | No | No | No |
pageXOffset | 設置或返回當前頁面相對于窗口顯示區左上角的 X 位置。 | No | No | No |
pageYOffset | 設置或返回當前頁面相對于窗口顯示區左上角的 Y 位置。 | No | No | No |
parent | 返回父窗口。 | 4 | 1 | 9 |
Screen | 對 Screen 對象的只讀引用。請參數 Screen 對象。 | 4 | 1 | 9 |
self | 返回對當前窗口的引用。等價于 Window 屬性。 | 4 | 1 | 9 |
status | 設置窗口狀態欄的文本。 | 4 | No | 9 |
top | 返回最頂層的先輩窗口。 | 4 | 1 | 9 |
window | window 屬性等價于 self 屬性,它包含了對窗口自身的引用。 | 4 | 1 | 9 |
| 只讀整數。聲明了窗口的左上角在屏幕上的的 x 坐標和 y 坐標。IE、Safari 和 Opera 支持 screenLeft 和 screenTop,而 Firefox 和 Safari 支持 screenX 和 screenY。 | 4 | 1 | 9 |
Window 對象方法
方法 | 描述 | IE | F | O |
---|---|---|---|---|
alert() | 顯示帶有一段消息和一個確認按鈕的警告框。 | 4 | 1 | 9 |
blur() | 把鍵盤焦點從頂層窗口移開。 | 4 | 1 | 9 |
clearInterval() | 取消由 setInterval() 設置的 timeout。 | 4 | 1 | 9 |
clearTimeout() | 取消由 setTimeout() 方法設置的 timeout。 | 4 | 1 | 9 |
close() | 關閉瀏覽器窗口。 | 4 | 1 | 9 |
confirm() | 顯示帶有一段消息以及確認按鈕和取消按鈕的對話框。 | 4 | 1 | 9 |
createPopup() | 創建一個 pop-up 窗口。 | 4 | No | No |
focus() | 把鍵盤焦點給予一個窗口。 | 4 | 1 | 9 |
moveBy() | 可相對窗口的當前坐標把它移動指定的像素。 | 4 | 1 | 9 |
moveTo() | 把窗口的左上角移動到一個指定的坐標。 | 4 | 1 | 9 |
open() | 打開一個新的瀏覽器窗口或查找一個已命名的窗口。 | 4 | 1 | 9 |
print() | 打印當前窗口的內容。 | 5 | 1 | 9 |
prompt() | 顯示可提示用戶輸入的對話框。 | 4 | 1 | 9 |
resizeBy() | 按照指定的像素調整窗口的大小。 | 4 | 1 | 9 |
resizeTo() | 把窗口的大小調整到指定的寬度和高度。 | 4 | 1.5 | 9 |
scrollBy() | 按照指定的像素值來滾動內容。 | 4 | 1 | 9 |
scrollTo() | 把內容滾動到指定的坐標。 | 4 | 1 | 9 |
setInterval() | 按照指定的周期(以毫秒計)來調用函數或計算表達式。 | 4 | 1 | 9 |
setTimeout() | 在指定的毫秒數后調用函數或計算表達式。 | 4 | 1 | 9 |
Window 對象描述
Window 對象表示一個瀏覽器窗口或一個框架。在客戶端 JavaScript 中,Window 對象是全局對象,所有的表達式都在當前的環境中計算。也就是說,要引用當前窗口根本不需要特殊的語法,可以把那個窗口的屬性作為全局變量來使用。例如,可以只寫 document,而不必寫 window.document。
同樣,可以把當前窗口對象的方法當作函數來使用,如只寫 alert(),而不必寫 Window.alert()。
除了上面列出的屬性和方法,Window 對象還實現了核心 JavaScript 所定義的所有全局屬性和方法。
Window 對象的 window 屬性和 self 屬性引用的都是它自己。當你想明確地引用當前窗口,而不僅僅是隱式地引用它時,可以使用這兩個屬性。除了這兩個屬性之外,parent 屬性、top 屬性以及 frame[] 數組都引用了與當前 Window 對象相關的其他 Window 對象。
要引用窗口中的一個框架,可以使用如下語法:
frame[i] //當前窗口的框架 self.frame[i] //當前窗口的框架 w.frame[i] //窗口 w 的框架
要引用一個框架的父窗口(或父框架),可以使用下面的語法:
parent //當前窗口的父窗口 self.parent //當前窗口的父窗口 w.parent //窗口 w 的父窗口
要從頂層窗口含有的任何一個框架中引用它,可以使用如下語法:
top //當前框架的頂層窗口 self.top //當前框架的頂層窗口 f.top //框架 f 的頂層窗口
新的頂層瀏覽器窗口由方法 Window.open() 創建。當調用該方法時,應把 open() 調用的返回值存儲在一個變量中,然后使用那個變量來引用新窗口。新窗口的 opener 屬性反過來引用了打開它的那個窗口。
一般來說,Window 對象的方法都是對瀏覽器窗口或框架進行某種操作。而 alert() 方法、confirm() 方法和 prompt 方法則不同,它們通過簡單的對話框與用戶進行交互。