本文實例講述了jQuery的文檔處理程序。分享給大家供大家參考,具體如下:
jQuery文檔處理程序
所謂的文檔處理程序,是指jQuery中提供的$(document).ready事件,此事件會在dom加載完畢后觸發,而window.onlaod和body.onload都是在頁面完全加載后觸發。
jQuery文檔處理程序介紹
在jQuery中想實現在DOM加載完畢后的處理邏輯,只需要使用$(document).ready()事件。此事件函數稱為"jQuery文檔處理程序"。
可以在頁面的任何位置,甚至是外部的js文件中,編寫如下列語句:
$(document).ready(function (){ alert("document.ready")});則在頁面的DOM加載完畢后,會立刻執行alert語句。如果頁面上有大的圖片、js文件等外部資源需要加載,jQuery的文檔處理程序會在其之前執行,而window.onload和boyd.onload是在所有的資源文件加載完畢后執行的。
Ready()函數時jQuery"事件函數"中提供的一個jQuery對象函數,簽名位ready(fn)。
fn是ready事件發生時執行的函數。
因為是jQuery對象函數,意味著可以在任何jQuery對象上調用:
$("body").ready(function (){ alert("body.ready")});上面的語句等同于:
$(document).ready(function (){alert("body.ready")});雖然ready()函數可以作用在任何jQuery對象上,但是使用時一定要注意對象是否具有ready事件。
也可以使用"$(fn)"這種簡化的形式:
$(function (){….})//等效于$(document).ready(function(){…});同jQuery中所有的事件對象一樣,$(document).ready事件,會按照出現的先后順序執行。
比如,可以調用兩次$(document).ready事件:
$(document).ready(function (){alert("document.ready-1")});$(document). ready(function (){alert("document.ready-2")});則在DOM加載完畢后,首先輸出"document.ready-1",然后輸出"document.ready-2"。如果使用傳統的:
Window.onload=function(){…..};上面的代碼會將window.onload原有的事件處理掉,然后綁定新的事件。
jQuery文檔處理程序的優勢
如果腳本需要在頁面加載時執行,那么大部分的腳本都可以放在$(document).ready()事件中。
在舉例jQuery文檔處理程序的優勢之前,先看一個常見的JavaScript編程錯誤:dom未加載完成即改變dom模型。
在傳統的javascript編程中。有時會在頁面的頭部或者底部直接插入script模塊并編寫代碼,比如下面的例子:
<!DOCTYPE html PUBLIC "-//W3C//DTDXHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"><head> <title>jQueryStorm 主站蜘蛛池模板: 兴义市| 牡丹江市| 镇巴县| 吉木萨尔县| 镇赉县| 蒙自县| 浑源县| 宁远县| 文山县| 绥棱县| 永靖县| 汪清县| 荔浦县| 嘉义县| 鄂伦春自治旗| 客服| 女性| 岐山县| 连平县| 平阴县| 措勤县| 盐山县| 淳化县| 江孜县| 新龙县| 南城县| 万荣县| 哈巴河县| 延边| 克山县| 罗江县| 曲阳县| 榆林市| 紫阳县| 平江县| 揭东县| 宝山区| 成都市| 茶陵县| 长海县| 德安县|