jquery ajax 回調(diào)函數(shù)只要配置正確就可以使用

成都創(chuàng)新互聯(lián)公司專(zhuān)注于泰安網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供泰安營(yíng)銷(xiāo)型網(wǎng)站建設(shè),泰安網(wǎng)站制作、泰安網(wǎng)頁(yè)設(shè)計(jì)、泰安網(wǎng)站官網(wǎng)定制、小程序設(shè)計(jì)服務(wù),打造泰安網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供泰安網(wǎng)站排名全網(wǎng)營(yíng)銷(xiāo)落地服務(wù)。
$.ajax({?url:?"test.html",?context:?document.body,?success:?function(){
alert("回調(diào)函數(shù)")
}})
使用代碼如上
回調(diào)函數(shù)實(shí)現(xiàn)的機(jī)制是:
⑴定義一個(gè)回調(diào)函數(shù);
⑵提供函數(shù)實(shí)現(xiàn)的一方在初始化的時(shí)候,將回調(diào)函數(shù)的函數(shù)指針注冊(cè)給調(diào)用者;
⑶當(dāng)特定的事件或條件發(fā)生的時(shí)候,調(diào)用者使用函數(shù)指針調(diào)用回調(diào)函數(shù)對(duì)事件進(jìn)行處理。
知道拓展:
jQuery是一套跨瀏覽器的JavaScript庫(kù),簡(jiǎn)化HTML與JavaScript之間的操作。由John Resig在2006年1月的BarCamp NYC上發(fā)布第一個(gè)版本。目前是由 Dave Methvin 領(lǐng)導(dǎo)的開(kāi)發(fā)團(tuán)隊(duì)進(jìn)行開(kāi)發(fā)。全球前10000個(gè)訪(fǎng)問(wèn)最高的網(wǎng)站中,有59%使用了jQuery,是目前最受歡迎的JavaScript庫(kù)。
回調(diào)函數(shù)是應(yīng)用程序提供給Windows系統(tǒng)DLL或其它DLL調(diào)用的函數(shù),一般用于截獲消息、獲取系統(tǒng)信息或處理異步事件。在計(jì)算機(jī)程序設(shè)計(jì)中,回調(diào)函數(shù),或簡(jiǎn)稱(chēng)回調(diào),是指通過(guò)函數(shù)參數(shù)傳遞到其它代碼的,某一塊可執(zhí)行代碼的引用。這一設(shè)計(jì)允許了底層代碼調(diào)用在高層定義的子程序。
jquery ajax 回調(diào)函數(shù)使用挺簡(jiǎn)單的,只要配置正確就可以使用。
$.ajax({?url:?"test.html",?context:?document.body,?success:?function(){
alert("回調(diào)函數(shù)")
}});
使用代碼如上,JQUERY通信組件這塊封裝的比較好,使用很方便。還可以配置異步或同步。
再補(bǔ)充一點(diǎn),一般在回調(diào)函數(shù)里給個(gè)操作的提示信息,然后再進(jìn)行相關(guān)的更新操作
?因?yàn)閖avascript的運(yùn)行機(jī)制的原因,jquery作為成熟的工具,為javascript提供了大量的回調(diào)函數(shù)(callback)。
?因?yàn)榛卣{(diào)函數(shù)的工作原理以及工作時(shí)機(jī),很多新手對(duì)回調(diào)函數(shù)不能熟練運(yùn)用。回調(diào)函數(shù)的重要作用之一,就是在某項(xiàng)操作完成時(shí),進(jìn)行下一項(xiàng)操作。這兩項(xiàng)操作功能上不一定耦合,但是邏輯上卻必須耦合。意思是前一個(gè)操作實(shí)現(xiàn)的功能(效果)可以和回調(diào)函數(shù)實(shí)現(xiàn)的功能毫無(wú)聯(lián)系,但是二者在代碼邏輯上卻是耦合的。耦合的意思是說(shuō),當(dāng)一操作進(jìn)行后,二操作會(huì)緊跟進(jìn)行,二者的運(yùn)行關(guān)系密不可分。回調(diào)函數(shù)增加了程序的耦合性,使代碼的邏輯更容易理解。
?回調(diào)函數(shù)的用處在javascript中可謂處處體現(xiàn),比如最為重要的就是AJAX回調(diào)。
?Jquery中提供了大量大回調(diào)函數(shù),比如complete,success,fail等操作。這些操作的調(diào)用時(shí)機(jī)就如同他們的名字一樣。success以為著成功的時(shí)候調(diào)用,等。
舉個(gè)簡(jiǎn)單的例子,以jquery中的動(dòng)畫(huà)為例,現(xiàn)在我想實(shí)現(xiàn)一個(gè)讓id為animate的dom對(duì)象寬度邊長(zhǎng)的動(dòng)畫(huà),在這個(gè)對(duì)象變長(zhǎng)之后,我想要提示用戶(hù),這個(gè)對(duì)象已經(jīng)變長(zhǎng)了。因此,我得使用以下的代碼:
$("#animate").animate({
width:?200
},?{
duration:?500,
success:?function()?{
alert("width?已經(jīng)變長(zhǎng)了");
},
error:?function()?{
alert("出現(xiàn)了錯(cuò)誤");
}
});
以上的代碼定義了兩個(gè)回調(diào)函數(shù)success和error,顧名思義,success是在成功的時(shí)候就會(huì)調(diào)用,error是在出錯(cuò)誤之后調(diào)用。
這就是回調(diào)函數(shù)的基本運(yùn)用。
看到這兒,或許你會(huì)問(wèn),為什么我不直接用這樣的代碼呢?
try?{
$("#animate").animate({
width:?2000
},?500,?"linear");
alert(""width已經(jīng)變長(zhǎng)了);
}?catch(error)?{
alert("出錯(cuò)了");
}
如果你測(cè)試你會(huì)發(fā)現(xiàn),動(dòng)畫(huà)并未完成,就出現(xiàn)了alert彈窗。
這就是javascript的運(yùn)行機(jī)制所造成的,javascript的運(yùn)行機(jī)制分為同步和異步,異步操作會(huì)破壞腳本的執(zhí)行流,使得程序跳過(guò)異步(異步仍然在進(jìn)行)而進(jìn)入接下來(lái)的程序,異步操作即使在進(jìn)行,也不會(huì)影響javascript的繼續(xù)執(zhí)行,也就是不會(huì)產(chǎn)生阻塞。同步操作中的定時(shí)操作有著與異步很相似的運(yùn)行機(jī)制,但是依然是同步操作。以上的錯(cuò)誤正是由于定時(shí)操作引起的。
回調(diào)函數(shù)的作用,最為重要的運(yùn)用,就是運(yùn)用在異步操作和定時(shí)操作。
jquery中運(yùn)用回調(diào)函數(shù)最重要的地方有兩個(gè),一個(gè)是動(dòng)畫(huà)回調(diào)(就是在動(dòng)畫(huà)執(zhí)行完成,或者執(zhí)行錯(cuò)誤,或者執(zhí)行失敗的時(shí)候調(diào)用),以及ajax(同動(dòng)畫(huà))。ajax與回調(diào)是密不可分的。
文章名稱(chēng):jquery的回調(diào)函數(shù),jquery error 回調(diào)
文章地址:http://chinadenli.net/article35/dsegesi.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷(xiāo)推廣、企業(yè)建站、外貿(mào)網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)、定制開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)