一、腳本運行時機
瀏覽器加載頁面時,會運行一切非聲明函數。
舉例:
<script type="text/javascript">
var v=null;
document.write("<h1>This is a heading</h1>");
//insert javascript code here.
function fn()
{
alert("Hello!")
}
</script>
頁面是從上至下解析的,頁面加載時,腳本的1、2行會被執行,fn()這類聲明函數ignore。(聲明函數一般作爲onload()、onclick()等事件響應函數執行)
二、ready和onload的區別
一般頁面響應加載的順序是:域名解析-加載html-加載js和css-加載圖片等資源文件。
ready所處的階段爲html加載結束,即所有的所有標籤加載完成,DOM樹完成構建。(此時僅僅是標籤完成加載,包括標籤屬性及標籤體,相關鏈接資源並未獲取,如js、css、圖片)。此時便可以調用DOM API進行DOM操作,jquery就是在這個階段工作。
使用方法:
$(document).ready(function(){
//do something
})
//jQuery的默認參數是:“document”,所以可以簡略爲:
$().ready(function(){
//do something
})
//更簡潔的:
$(function(){
// do something
});
onload所處階段爲所有資源加載結束,即onload在ready之後。涉及到資源操作要在這個階段進行。