JavaScript : WINDOW FOR JAVASCRIPT

來源:互聯網
上載者:User
javascript|window 熟練window對象的open、close、alert、confirm、prompt、setTimeout、clearTimeout、setInterval、clearInterval、moveBy、resizeBy、scrollBy方法的使用
 掌握window對象的moveTo、resizeTo、scrollTo、print方法的使用
 熟練掌握window對象的status、location、name、self、opener屬性的使用  Window對象是用戶端javascript最高層對象之一,只要開啟瀏覽器視窗,不管該視窗中是否有開啟的網頁,當遇到BODY、FRAMESET或FRAME元素時,都會自動建立window對象的執行個體。另外,該對象的執行個體也可由window.open()方法建立。由於window對象是其它大部分對象的共同祖先,在調用window對象的方法和屬性時,可以省略window對象的引用。例如:window.document.write()可以簡寫成: document.write()。  在視窗中觖發本視窗對象的任何方法和屬性時可以省去視窗的執行個體名稱。例如給當前的myWin視窗設定status屬性時,可以只用status而不用myWin.status。但是,在事件處理中調用location屬性、close()方法或open()方法時必須使用執行個體名稱。

 6-2-1 window對象的方法
 window對象有以下方法:

 open
 close
 alert
 confirm
 prompt
 setTimeout
 clearTimeout
 setInterval
 clearInterval
 moveBy
 moveTo
 resizeBy
 resizeTo
 scrollBy
 scrollTo
 find
 back
 forward
 home
 stop
 print
 blur
 focus
 captureEvent
 enableExternalCapture
 disableExternalCapture
 handleEvent
 releaseEvent
 routeEvent
 scroll

   1. open方法
   文法格式:

 window.open(URL,視窗名稱,視窗風格)
   功能:開啟一個新的視窗,並在視窗中裝載指定URL地址的網頁。

   說明:

 open方法用於開啟一個新的瀏覽器視窗,並在新視窗中裝入一個指定的URL地址


 open方法在開啟一個新的瀏覽器視窗時,還可以指定視窗的名稱(第二個參數);
 open方法在開啟一個新的瀏覽器視窗時,還可以指定視窗的風格(第三個參數),

視窗風格有以下選項,這些選項可以多選,如果多選,各選項之間用逗號分隔:
 toolbar:指定視窗是否有標準工具列。當該選項的值為1或yes時,表示有標準

工具列,當該選項的值為0或no時,表示沒有標準工具列;
 location:指定視窗是否有地址工具列,選項的值及含義與toolbar相同;
 directories:指定視窗是否有連結工具列,選項的值及含義與toolbar相同;
 status:指定視窗是否有狀態列,選項的值及含義與toolbar相同;
 menubar:指定視窗是否有菜單,選項的值及含義與toolbar相同;
 scrollbar:指定當前視窗文檔大於視窗時是否有捲軸,選項的值及含義與

toolbar相同;
 resizable:指定視窗是否可改變大小,選項的值及含義與toolbar相同;
 width:以像素為單位指定視窗的寬度,已被innerWidth取代;
 height:以像素為單位指定視窗的高度,已被innerHeight取代;
 outerWidth:以像素為單位指定視窗的外部寬度;
 outerHeight:以像素為單位指定視窗的外部高度;
 left:以像素為單位指定視窗距螢幕左邊的位置;
 top:以像素為單位指定視窗距螢幕頂端的位置;
 alwaysLowered:指定視窗隱藏在所有視窗之後,選項的值及含義與toolbar相同


 alwaysRaised:指定視窗浮在所有視窗之上,選項的值及含義與toolbar相同;
 dependent:指定開啟的視窗為當前視窗的一個子視窗,並隨著父視窗的關閉而

關閉,選項的值及含義與toolbar相同;

 hotkeys:在沒有功能表列的新視窗中設定安全退出的熱鍵,選項的值及含義與

toolbar相同;

 innerHeight:設定視窗中文檔的像素高度;

 innerWidth:設定視窗中文檔的像素寬度;

 screenX:設定視窗距離螢幕左邊界的像素長度;

 screenY:設定視窗距離螢幕上邊界的像素長度;

 titleBar:指明標題列是否在新視窗中可見,選項的值及含義與toolbar相同;

 z-look:指明當視窗被啟用時,不能浮在其它視窗之上,選項的值及含義與

toolbar相同。

 open方法返回的是該視窗的引用。

 小技巧:該方法經常用於在開啟一個網頁時自動開啟另一個視窗。

 例6-2-1:編製一個小程式,它用於在開啟當前視窗時自動開啟另一個視窗,要

求該窗沒有標準工具列、地址欄、連結工具列、功能表列,但有狀態列,視窗中打

開的網頁地址為:http://www.dlrtvu.edu.cn

 2. close方法
 文法格式:

 window.close()
 功能:close方法用於自動關閉瀏覽器視窗。

  3. alert方法
 文法格式:

 window.alert(提示字串)
 功能:彈出一個警告框,在警告框內顯示提示字串文本。

  4. confirm方法
 文法格式:

 window.confirm(提示字串)
 功能:顯示一個確認框,在確認框內顯示提示字串,當使用者單擊“確定”按鈕

時該方法返回true,單擊“取消”時返回false。

  5. prompt方法
 文法格式:

 window.prompt(提示字串,預設文本)
 功能:顯示一個輸入框,在輸入框內顯示提示字串,在輸入文字框顯示預設文

本,並等待使用者輸入,當使用者單擊“確定”按鈕時,返回使用者輸入的字串,當

單擊“取消”按鈕時,返回null值。

  6. setTimeout方法
 文法格式:

 window.setTimeout(代碼字元運算式,毫秒數)
 功能:定時設定,當到了指定的毫秒數後,自動執行代碼字元運算式。

 7. clearTimeout方法
 文法格式:

 window.clearTimeout(定時器)
 功能:取消以前的定時設定,其中的參數是用setTimeout設定時的傳回值。

  8. setInterval方法
 文法格式:

 window.setInterval(代碼字元運算式,毫秒數)
 功能:設定一個時間間隔後(第二個參數),反覆執行“代碼字元運算式”的內容

 9. clearInterval方法
 文法格式:

 window.clearInterval(時間間隔器)
 功能:取消setInterval設定的定時。其中的參數是setInterval方法的傳回值。

 10. moveBy方法
 文法格式:

 window.moveBy(水平位移量,垂直位移量)
 功能:按照給定像素參數移動指定視窗。第一個參數是視窗水平移動的像素,第

二個參數是視窗垂直移動的像素。

  11.moveTo方法
 文法格式:

 window.moveTo(x,y)
 功能:將視窗移動到指定的指定座標(x,y)處。

 12. resizeBy方法
 文法格式:

 window.resizeBy(水平,垂直)
 功能:將當前視窗改變指定的大小(x,y),當x、y的值大於0時為擴大,小於0時

為縮小。

 13. resizeTo方法
 文法格式:

 window.resizeTo(水平寬度,垂直寬度)
 功能:將當前視窗改變成(x,y)大小,x、y分別為寬度和高度。

 14. scrollBy方法
 文法格式:

 window.scrollBy(水平位移量,垂直位移量)
 功能:將視窗中的內容按給定的位移量滾動。參數為正數時,正向滾動,否則反

向滾動。

 15. scrollTo方法
 文法格式:

 window.scrollTo(x,y)
 功能:將視窗中的內容滾動到指定位置。

 16.find方法
 文法格式:

 window.find()
 功能:當觸發該方法時,將彈出一個“find”(尋找)交談視窗,並允許使用者在觸

發find方法的頁面中尋找一個字串。

 註:該屬性在IE5.5及Netscape6.0中都不支援。

 17. back方法
 文法格式:

 window.back()
 功能:類比使用者點擊瀏覽器上的[上一頁] 按鈕,將頁面轉到瀏覽器的上一頁。

 說明:僅噹噹前頁面存在上一頁時才能進行該操作。

 註:IE5.5不支援該方法,Netscape6.0支援。

 18. forward方法
 文法格式:

 window.forward()
 功能:類比使用者點擊瀏覽器上的“前進”按鈕,將頁面轉到瀏覽器的下一頁。

 說明:僅噹噹前頁面存在下一頁時才能進行該操作。

 註:IE5.5不支援該方法,Netscape6.0支援。

 19. home方法
 文法格式:

 window.home()
 功能:類比使用者點擊瀏覽器上的“首頁”按鈕,將頁面轉到指定的頁面上。

 註:IE5.5不支援該方法,Netscape6.0支援。

 20. stop方法
 文法格式:

 window.stop()
 功能:類比使用者點擊瀏覽器上的“停止”按鈕,終止瀏覽器的下載操作。

 註:IE5.5不支援該方法,Netscape6.0支援。

 21. print方法
 文法格式:

 window.print()
 功能:類比使用者點擊瀏覽器上的“列印”按鈕,通知瀏覽器開啟列印對話方塊列印

當前頁。
      
 22. blur方法
 文法格式:

 window.blur()
 功能:從視窗中移出焦點。當與focus方法合用時必須小心,因為可能導致焦點

不斷移進移出。

 23. focus方法
 文法格式:

 window.focus()
 功能:使視窗中得到焦點。當與blur方法合用時必須小心,因為可能導致焦點不

斷移進移出。

 24. captureEvent方法
 文法格式:

 window.captureEvent(Event)      
 window.captureEvent(事件1|事件2|...|事件n)
 功能:捕捉指定參數的所有事件。由於能夠捕獲哪些由本地程式自己處理的事件

,所以程式員可以隨意定義函數來處理事件。如果有多個事件需要捕捉,各事件

之間用管道符“|”隔開。可捕捉的事件類型如下:

 Event.ABORT

 Event.BLUR

 Event.CHANGE

 Event.CLICK

 Event.DBLCLICK

 Event.DRAGDROP

 Event.ERROR

 Event.FOCUS

 Event.KEYDOWN

 Event.KEYPRESS

 Event.KEYUP

 Event.LOAD

 Event.MOUSEDOWN

 Event.MOUSUEMOVE

 Event.MOUSEOUT

 Event.MOUSEOVER

 Event.MOUSEUP

 Event.MOVE

 Event.RESET

 Event.RESIZE

 Event.SELECT

 Event.SUBMIT

 Event.UNLOAD

 25. enableExternalCapture事件
 文法格式:

 window.enableExternalCapture(event)
 功能:enableExternalCapture方法用於捕捉通過參數傳入的外來事件。

 26. disableExternalCapture事件
 文法格式:

 window.disableExternalCapture()
 功能:取消enableExternalCapture方法的設定,終止對外來事件的捕捉。

 27. handleEvent事件
 文法格式:

 window.handleEvent(event)
 功能:觸發指定事件的事件處理器。

 28. releaseEvent事件
 文法格式:

 window.releaseEvent(event)
 window.releaseEvent(事件1|事件2|...|事件n)
 功能:釋放通過參數傳入的已被捕捉的事件,這些事件是由

window.captureEvent方法設定的,可釋放的事件與captureEvent相同。

 29. routeEvent事件
 文法格式:

 window.releaseEvent(event)
 功能:把被捕捉類型的所有事件轉交給標準事件處理方法進行處理,可轉交的事

件與captureEvent相同。

 30 scroll事件
 文法格式:

 window.scroll(X座標,Y座標)
 功能:將視窗移動到指定的座標位置。

 6-2-2 window對象的屬性
 window對象具有如下屬性:

 status

 statusbar

 statusbar.visible

 defaultstatus

 location

 locationbar

 locationbar.visible

 self

 name

 closed

 frames

 frames.length

 length

 document

 history

 innerHeight

 innerWidth

 menubar

 menubar.visible

 opener

 outerHeight

 outerWidth

 pageXOffset

 pageYOffset

 parent

 personalbar

 personalbar.visible

 scrollbar

 scrollbar.visible

 toolbar

 toolbar.visible

 top

 1. status屬性
 文法格式:

 window.status=字串
 功能:設定或給出瀏覽器視窗中狀態列的當前顯示資訊。

 小技巧:可以使用該屬性設定瀏覽器視窗狀態列資訊。

  2. statusbar屬性
 文法格式:

 window.statusbar.屬性
 功能:statusbar屬性本身也是一個對象,用於訪問它自已的visible屬性從而確

定狀態列是否可見。

 註:IE5.5瀏覽器不支援該屬性。

 3. statusbar.visible屬性
 文法格式:

 window.statusbar.visible
 功能:檢查狀態列是否可見,如果可見則返回true,反之返回false。

 註:IE5.5瀏覽器不支援該屬性。

  4. defaultstatus屬性
 文法格式:

 window.defaultstatus[=字串]
 功能:defaultstatus屬性值是瀏覽器窗中狀態列的預設顯示資訊。

  5.location屬性
 文法格式:

 window.location=URL
 功能:給出當前視窗的URL資訊或指定開啟視窗的URL。

  6. locationbar屬性
 文法格式:

 window.locationbar.屬性
 功能:locationbar屬性也可以看成是一個子物件,這個屬性用來擷取它自已的

visible屬性來確定位置欄是否可見。

 到目前為止,該屬性只有一個子屬性:visible。

 註:IE5.5不支援該屬性。

 7. locationbar.visible屬性
 文法格式:

 window.locationbar.visible
 功能:返回位置欄是否可見,如果可見返回true,反之返回false。

 註:IE5.5不支援該屬性。

 8. self屬性
 文法格式:

 window.self.方法
 window.self.屬性
 功能:該屬性包含當前視窗的標誌,利用這個屬性,可以保證在多個視窗被開啟

的情況下,正確調用當前視窗內的函數或屬性而不會發生混亂。

  9. name屬性
 文法格式:

 window.name=名稱
 功能:返回視窗名稱,這個名稱是由window.open()方法建立新視窗時給定的。

在javascript1.0版本中,這個屬性只能用於讀取視窗名稱,而到了

javascript1.1版本時,可以用這個屬性給一個不是用window.open()方法建立的

視窗指定一個名稱。

  10. closed屬性
 文法格式:

 window.closed
 功能:closed屬性用於返回指定視窗的執行個體是否已經關閉,如果關閉,返回true

,反之返回flase。

 11. frames屬性
 文法格式:

 window.frames["架構名稱"]
 window.frames[數值]
 功能:frames屬性是一個數組,用來儲存文檔中每一個由元素建立的子視窗(框

架)執行個體,其中的下標即可以是序號也可以是用FRAME元素的NAME屬性指定的名

稱來得到並使用。

 12. frames.length屬性
 文法格式:

 window.frames.length
 功能:frames.length屬性用於給出文檔中子視窗(架構)執行個體的個數。

 13. length屬性
 文法格式:

 window.length
 功能:length屬性返回一個視窗內的子視窗數目,該屬性與

window.frame.length屬性的值相同。

 14. document屬性
 文法格式:

 window.document.事件
 window.document.方法
 window.document.屬性
 功能:window對象的子物件document是javascript的核心對象,在指令碼中遇到

BODY元素時建立一個執行個體。

 15. history屬性
 文法格式:

 window.history[數值]
 window.history.方法()
 window.history.屬性
 window對象的子物件history是javascript的核心對象之一,該屬性包含了一個

已訪問過頁面的名稱和URL的數組。

 16. innerHeight屬性
 文法格式:

 window.innerHeight=數值
 功能:返回或指定瀏覽器視窗中文檔的像素高度,這個高度不包括任何工具列和

組成視窗的頁面修飾高度。

 註:IE5.5不支援該屬性。

 17. innerWidth屬性
 文法格式:

 window.innerHeight=數值
 功能:返回或指定瀏覽器視窗中文檔的像素寬度,這個寬度不包括任何工具列和

組成視窗的頁面修飾寬度。

 註:IE5.5不支援該屬性。

 18. menubar屬性
 文法格式:

 window.menubar.屬性
 功能:menubar屬性也可以看成是一個子物件,這個屬性用來擷取它自已的

visible屬性來確定功能表列是否可見。

 到目前為止,該屬性只有一個子屬性:visible。

 註:IE5.5不支援該屬性。

 19. menubar.visible屬性
 文法格式:

 window.menubar.visible
 功能:menubar.visible屬性用於返回功能表列是否可見,如果可見返回true,反

之返回false。

 註:IE5.5不支援該屬性。

 20. opener屬性
 文法格式:

 window.opener
 window.opener.方法
 window.opener.屬性
 功能:opener屬性與開啟該視窗的父視窗相聯絡,當訪問子視窗中operer屬性時

,返回的是父視窗。通過該屬性,可以使用父視窗對象中的方法和屬性。

 21. outerHeight屬性
 文法格式:

 window.outerHeight
 功能:outerHeight屬性用於訪問瀏覽器視窗的像素高度,該高度包括工具列和

裝飾邊的高度。

 註:IE5.5不支援該屬性。

 22. outerWidth屬性
 文法格式:

 window.outerWidth
 功能:outerWidth屬性用於訪問瀏覽器視窗的像素寬度,該寬度包括工具列和裝

飾邊的寬度。

 註:IE5.5不支援該屬性。

 23. pageXOffset屬性
 文法格式:

 window.pageXOffset=數值
 功能:指定瀏覽器視窗中文檔左上方在視窗中的當前水平像素位置。在利用

moveTo移動之前,可以通過該屬性來決定是否需要移動視窗。因為該屬性返回了

可見文檔相對整個頁面的當前位置。

 註:IE5.5不支援該屬性。

 24. pageYOffset屬性
 文法格式:

 window.pageYOffset=數值
 功能:指定瀏覽器視窗中文檔左上方在視窗中的當前垂直像素位置。在利用

moveTo移動之前,可以通過該屬性來決定是否需要移動視窗。因為該屬性返回了

可見文檔相對整個頁面的當前位置。

 註:IE5.5不支援該屬性。

 25. parent屬性
 文法格式:

 window.parent.frames[數值]
 window.parent.framesName
 功能:訪問各個子視窗(多架構)所在的父視窗。

 26. personalbar屬性
 文法格式:

 window.personalbar.屬性
 功能:personalbar屬性本身也是一個對象,用於訪問其自身的visible屬性來確

定個人欄是否可見。

 註:IE5.5不支援該屬性。

 27. personalbar.visible屬性
 文法格式:

 window.personalbar.visible
 功能:確定個人欄是否可見,如果可見則返回true,反之返回false。

 註:IE5.5不支援該屬性。

 28. scrollbars屬性
 文法格式:

 window.scrollbars.屬性
 功能:scrollbars屬性本身也是一個對象,用於訪問其自身的visible屬性來確

定滾動欄是否可見。

 註:IE5.5不支援該屬性。

 29. scrollbars.visible屬性
 文法格式:

 window.scrollbars.visible
 功能:scrollbars.visible用於確定滾動欄是否可見,如果可見則返回true,反

之返回false。

 註:IE5.5不支援該屬性。

 30. toolbar屬性
 文法格式:

 window.toolbar.屬性
 功能:toolbar屬性本身也是一個對象,用於訪問它自已的visible屬性從而確定

工具列是否可見。

 註:IE5.5不支援該屬性。

 31. toolbar.visible屬性
 文法格式:

 window.toolbar.visible
 功能:toolbar.visible屬性用於檢查工具列是否可見,如果可見則返回true,

反之返回false。

 註:IE5.5不支援該屬性。

 32. top屬性
 文法格式:

 window.top.frames[數值]
 window.top.frameName
 window.top.方法()
 window.top.屬性
 功能:window對象的top屬性用於包含所有裝入瀏覽器的子視窗(多架構)的最頂

層視窗的資訊。



相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。