JavaScript window.onload簡介
導讀 | window.onload()方法用於在網頁載入完成後立即執行的操作,即當HTML文件載入完成後,立即執行某個方法。 |
window.onload()通常用於元素,在頁面完全載入後(包括圖片,css檔案等等)執行 程式碼。
只有一個要執行的函式語法:
視窗。onload = funcRef ;
在頁面載入完成後funcRef方法會被呼叫。
有多個要執行的函式語法:
視窗。onload = function (){ Func1 (); Func2 (); Func3 (); ..... }
在頁面載入完成後依次執行Func1,Func2,Func3。
因為 JavaScript 中的函式方法需要在 HTML 文件渲染完成後才可以使用,如果沒有渲染完成,此時的 DOM 樹是不完整的,這樣在呼叫一些 JavaScript 程式碼時就可能報出"undefined"錯誤。
例項
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <title>沒有使用 window.onload() 測試</title><style type="text/css">#bg{ width:120px; height:120px; border:4px solid blue; }</style><script type="text/javascript">document.getElementById("bg").style.backgroundColor="#F00";</script></head><body> <div id="bg"></div></body></html>
以上例項我們要實現的效果是將 div 的背景顏色設定為 #F90,但是並沒有實現此效果,因為程式碼是順序執行的,當執行到 document.getElementById("#bg").style.backgroundColor="#F00" 的時候,還沒有載入到此 div 物件,所以背景顏色沒有設定成功。報錯資訊如下:
我們可以新增 window.onload 就可以正常執行,程式碼修改如下:
例項
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <title>使用 window.onload() 測試</title><style type="text/css">#bg{ width:120px; height:120px; border:4px solid blue; }</style><script type="text/javascript">window.onload=function(){ document.getElementById("bg").style.backgroundColor="#F00"; }</script></head><body> <div id="bg"></div></body></html>
window.onload 事件繫結事件處理函式,繫結的是一個匿名函式,當然也可以繫結具名函式,程式碼例項如下:
例項
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <title>使用 window.onload() 繫結具體函式</title><script type="text/javascript"> // 函式名為 runoob window.onload=function runoob(){ document.write("菜鳥教程 -- 學的不僅是技術,更是夢想!!!"); }</script></head><body> </body></html>
有多個要執行的函式例項:
例項
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <title>使用 window.onload() 執行多個函式</title><style type="text/css">#bg{ width:100px; height:100px; border:2px solid blue; }</style><script type="text/javascript">window.onload=function(){ function runoob1(){ document.getElementById("bg").style.backgroundColor="#F00"; } function runoob2(){ document.getElementById("bg").style.width="200px"; document.getElementById("bg").style.height="200px"; } runoob1(); runoob2(); }</script></head><body> <div id="bg"></div></body></html>
window.onload = function () {}; // JavaScript $(document).ready(function () {}); // jQuery
以上兩種方式都是在 HTML 文件完畢後再執行 DOM 操作,但它們還是有一定的區別,如下圖:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2759643/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JavaScript:window.onload問題JavaScript
- Javascript 簡介JavaScript
- JavaScript簡介JavaScript
- JavaScript 字串簡介JavaScript字串
- JavaScript物件簡介JavaScript物件
- javascript事件簡介JavaScript事件
- javascript模組化簡介JavaScript
- JavaScript基礎簡介JavaScript
- JavaScript 簡單介紹JavaScript
- JavaScript 教程之JavaScript常用框架簡介JavaScript框架
- 簡介JavaScript的組成JavaScript
- 簡單介紹克隆 JavaScriptJavaScript
- javascript物件簡單介紹JavaScript物件
- javascript this指向簡單介紹JavaScript
- javascript加密簡單介紹JavaScript加密
- 函式式 JavaScript 簡介函式JavaScript
- 簡單介紹JavaScript閉包JavaScript
- JavaScript希爾排序簡單介紹JavaScript排序
- 《JavaScript 闖關記》之簡介JavaScript
- javascript constructor簡單介紹JavaScriptStruct
- javascript建立物件簡單介紹JavaScript物件
- javascript的this用法簡單介紹JavaScript
- javascript arguments用法簡單介紹JavaScript
- javascript 變數簡單介紹JavaScript變數
- javascript簡單模板引擎介紹JavaScript
- javascript作用域簡單介紹JavaScript
- JavaScript: window.onload = function() {} 裡面的函式不執行JavaScriptFunction函式
- JavaScript return語句簡單介紹JavaScript
- javascript鏈式呼叫簡單介紹JavaScript
- javascript除法運算簡單介紹JavaScript
- javascript &&和||運算子簡單介紹JavaScript
- javascript方法過載簡單介紹JavaScript
- javascript遞迴概念簡單介紹JavaScript遞迴
- JavaScript this指向解綁簡單介紹JavaScript
- javascript陣列操作簡單介紹JavaScript陣列
- javascript with()語句用法簡單介紹JavaScript
- javascript匿名函式簡單介紹JavaScript函式
- javascript的in運算子簡單介紹JavaScript