轉載請注明出處:http://www.uphtm.com/js/128.html
瀏覽器窗口本身理解一些事件,包括從當載入頁面的時候觸發的事件,到當訪問者離開頁面的時候觸發的事件:
·load。當Web瀏覽器完成下載Web頁面文件的全部內容之后(HTML文件本身,加上任何鏈接圖像、Flash電影和外部的CSS和JavaScript文件),load事件觸發。Web設計師習慣上會使用這個事件來啟動操作Web頁面的任何程序。然而,如果有很多的圖形或者其他較大的鏈接文件的話,載入一個Web頁面及其所有的文件可能會花很長的時間。在某些情況下,這意味着在頁面已經在瀏覽器中顯示相當一段時間后,JavaScript程序都還沒有運行。好在jQuery提供了load事件的一個響應性要好得多的替代。
·resize。當我們通過單擊最大化按鈕或者拖動瀏覽器的調整大小指針來調整瀏覽器窗口的大小的時候,瀏覽器會觸發resize事件。當訪問者改變自己瀏覽器窗口的大小的時候,一些設計者使用這一事件來改變頁面的布局。例如,在訪問者重新調整瀏覽器窗口的大小之后,可以查看瀏覽器的寬度,如果確實變寬了,可以改變設計以添加更多的內容列來填充空間。
注意:當重新調整窗口的大小的時候,Internet Explorer、Opera和Safari都觸發多個resize事件,而Firefox只是在已經釋放了調整大小指針之后觸發resize事件。
·scroll。當拖動滾動條的時候,或者使用鍵盤(up/down/home/end等鍵)或鼠標滾輪來滾動Web頁面的時候,觸發scroll事件。如果頁面沒有一個滾動條,就不會觸發scroll事件。一些程序員使用這一事件來幫助搞清楚(在頁面滾動后)元素出現在屏幕的什么位置。
·unload。當單擊了連接到其他頁面的鏈接、關閉一個瀏覽器標簽頁或者關閉瀏覽器窗口的時候,Web瀏覽器都會觸發unload事件。它就像是JavaScript程序的最后一次喘息,並且給我們一個機會來完成瀏覽器離開頁面之前的最后一次操作。惡意的程序員曾經使用這個事件來使得訪問者難以離開頁面。每次訪問者試圖關閉該頁面,就會出現一個新的窗口並返回該頁面。但是,也可以用這個事件來做些好事情。例如,程序可以警告訪問者他已經開始填寫一個表單但是還沒有提交,或者程序可以把表單數據發送給Web服務器以便在訪問者退出頁面之前保存數據。
原文:JavaScript觸發文檔事件和窗口事件,轉載請注明出處:http://www.uphtm.com/js/128.html
