1. BOM與DOM
BOM指的是浏覽器對象模型,也就是說在JavaScript語言中,将浏覽器封裝為一個window對象,例如:window.location.href就表示目前頁面的url位址。
DOM指的是文檔對象模型,其實DOM就是window.document,因為太常用了,是以可以直接用document,它指的是<html>與</html>之間的html文檔。
2. window.onload
window.onload代表視窗頁面全部加載完畢(包括圖檔等)後觸發的事件,例如:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script src="jquery.min.js"></script>
<title></title>
<script>
window.onload=init;
function init(){
console.log("頁面全部加載完畢");
}
</script>
</head>
<body>
</body>
</html>
3. jQuery中的頁面初始化
其實很多時候,無需等待頁面所有内容加載完畢再去執行初始化,畢竟隻要整個文檔結構定下來了,就可以去填充内容了(比如菜單、比如表格内容的資訊,無需等待圖檔下載下傳完了再顯示,這樣整個頁面加載更流暢)。
是以,最好的時機是在document,即網頁的html文檔加載完畢後執行一個初始化方法,最佳。
jQuery提供了$(document).ready用于指定初始化方法,含義就是document對象加載完畢了執行的方法。
例如:
$(document).ready(init);//指定init方法為document對象加載完畢後執行的方法
console.log("document加載完畢");
of course,也可以直接指定函數:
$(document).ready(
function(){
console.log("document加載完畢");
}
);
最後,因為這個初始化方法太常用了,是以jQuery提供了簡寫,确實夠簡單了,但是俺覺得這種寫法對意義表達的不明确,是以還是上面的較好,當然蘿蔔白菜各有所愛,肯定也有更喜歡這種簡潔優雅的寫法的。
$(function(){
});