第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

章節(jié)
問(wèn)答
課簽
筆記
評(píng)論
占位
占位

隊(duì)列操作

jQuery 中有一個(gè) Queue 隊(duì)列的接口,這個(gè)模塊沒(méi)有單獨(dú)拿出來(lái)作為一個(gè)章節(jié)是因?yàn)檫@個(gè)是內(nèi)部專門(mén)為動(dòng)畫(huà)服務(wù)的。Queue 隊(duì)列如同 data 數(shù)據(jù)緩存與 Deferred 異步模型一樣,都是 jQuery 庫(kù)的內(nèi)部實(shí)現(xiàn)的基礎(chǔ)設(shè)施。

Queue隊(duì)列

隊(duì)列是一種特殊的線性表,只允許在表的前端(隊(duì)頭)進(jìn)行刪除操作(出隊(duì)),在表的后端(隊(duì)尾)進(jìn)行插入操作(入隊(duì))。隊(duì)列的特點(diǎn)是先進(jìn)先出(FIFO-first in first out),即最先插入的元素最先被刪除。

為什么要引入隊(duì)列?

我們知道代碼的執(zhí)行流有異步與同步之分,例如:

var a = 1;
setTimeout(function(){
    a = 2;
},0)
alert(a) //1

我們一直習(xí)慣于“線性”地編寫(xiě)代碼邏輯,但是在 JavaScript 編程幾乎總是伴隨著異步操作:

setTimeout、CSS3Transition/Animation、ajax、dom 的繪制、postmessage、Web Database 等等,大量異步操作所帶來(lái)的回調(diào)函數(shù)會(huì)把我們的算法分解地支離破碎,之前我們說(shuō)過(guò)對(duì)于“異步+回調(diào)”的模式,怎么“拉平”異步操作使之跟同步一樣,因?yàn)楫惒讲僮鬟M(jìn)行流程控制的時(shí)候無(wú)非避免的要嵌套大量的回調(diào)邏輯,所以就會(huì)出現(xiàn) promises 約定了。

那么 jQuery 引入隊(duì)列其實(shí)從一個(gè)角度上可以認(rèn)為:允許一系列函數(shù)被異步地調(diào)用而不會(huì)阻塞程序。

看一個(gè)代碼段:

$("#Aaron").slideUp().fadeIn()

這是 jQuery 的一組動(dòng)畫(huà)鏈?zhǔn)叫蛄?,它的?nèi)部其實(shí)就是一組隊(duì)列 Queue,所以隊(duì)列和 Deferred 地位類似,是一個(gè)內(nèi)部使用的基礎(chǔ)設(shè)施。

  • 當(dāng) slideUp 運(yùn)行時(shí),fadeIn 被放到 fx 隊(duì)列中
  • 當(dāng) slideUp 完成后,從隊(duì)列中被取出運(yùn)行

Queue 函數(shù)允許直接操作這個(gè)鏈?zhǔn)秸{(diào)用的行為,同時(shí) Queue 可以指定隊(duì)列名稱獲得其他能力而不局限于 fx 隊(duì)列。

jQuery 提供了 2 組隊(duì)列操作的 API:

jQuery.queue/dequeue
jQuery.fn.queue/dequeue

但是不同與普通隊(duì)列定義的是:

  • jQuery.queue 和 jQuery.fn.queue 不僅執(zhí)行出隊(duì)操作返回隊(duì)頭元素,還會(huì)自動(dòng)執(zhí)行返回的隊(duì)頭元素
  • fn 是擴(kuò)展在原型上的高級(jí)API是提供給實(shí)例使用的
  • .queue/.dequeue 其內(nèi)部是調(diào)用的 .queue,.dequeue 靜態(tài)的底層方法實(shí)現(xiàn)入列與出列

任務(wù)

?不會(huì)了怎么辦
||

提問(wèn)題

寫(xiě)筆記

公開(kāi)筆記
提交
||

請(qǐng)驗(yàn)證,完成請(qǐng)求

由于請(qǐng)求次數(shù)過(guò)多,請(qǐng)先驗(yàn)證,完成再次請(qǐng)求

加群二維碼

打開(kāi)微信掃碼自動(dòng)綁定

您還未綁定服務(wù)號(hào)

綁定后可得到

  • · 粉絲專屬優(yōu)惠福利
  • · 大咖直播交流干貨
  • · 課程更新,問(wèn)題答復(fù)提醒
  • · 賬號(hào)支付安全提醒

收藏課程后,能更快找到我哦~

使用 Ctrl+D 可將課程添加到書(shū)簽

邀請(qǐng)您關(guān)注公眾號(hào)
關(guān)注后,及時(shí)獲悉本課程動(dòng)態(tài)

舉報(bào)

0/150
提交
取消
全部 精華 我要發(fā)布
全部 我要發(fā)布
最熱 最新
只看我的

手記推薦

更多

本次提問(wèn)將花費(fèi)2個(gè)積分

你的積分不足,無(wú)法發(fā)表

為什么扣積分?

本次提問(wèn)將花費(fèi)2個(gè)積分

繼續(xù)發(fā)表請(qǐng)點(diǎn)擊 "確定"

為什么扣積分?