内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

jQuery中隊(duì)列queue()函數(shù)怎么使用

這篇“jQuery中隊(duì)列queue()函數(shù)怎么使用”文章的知識點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“jQuery中隊(duì)列queue()函數(shù)怎么使用”文章吧。

成都創(chuàng)新互聯(lián)主營盱眙網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶APP開發(fā)公司,盱眙h5微信小程序搭建,盱眙網(wǎng)站營銷推廣歡迎盱眙等地區(qū)企業(yè)咨詢

如果當(dāng)前jQuery對象匹配多個元素:獲取隊(duì)列時,只獲取第一個匹配元素上的隊(duì)列;設(shè)置隊(duì)列(替換隊(duì)列、追加函數(shù))時,則為每個匹配元素都分別進(jìn)行設(shè)置。
該函數(shù)屬于jQuery對象(實(shí)例)。如果需要移除并執(zhí)行隊(duì)列中的第一個函數(shù),請使用dequeue()函數(shù)。你也可以使用clearQueue()函數(shù)清空指定的隊(duì)列。

語法
jQuery 1.2 新增該函數(shù)。queue()函數(shù)具有如下兩種用法:

用法一:

jQueryObject.queue( [ queueName ] [, newQueue ] )

如果沒有指定任何參數(shù)或只指定了queueName參數(shù),則表示獲取指定名稱的函數(shù)隊(duì)列。如果指定了newQueue參數(shù),則表示使用新的隊(duì)列newQueue設(shè)置(替換)當(dāng)前隊(duì)列中的所有內(nèi)容。

用法二:

jQueryObject.queue( [ queueName ,] callback )

將指定的函數(shù)添加到指定的隊(duì)列(末尾)。
注意:queue()函數(shù)的所有設(shè)置操作針對當(dāng)前jQuery對象所匹配的每一個元素;所有讀取操作只針對第一個匹配的元素。

參數(shù)
請根據(jù)前面語法部分所定義的參數(shù)名稱查找對應(yīng)的參數(shù)。
queueName:可選/String類型指定的隊(duì)列名稱,默認(rèn)為"fx"(表示jQuery中的標(biāo)準(zhǔn)動畫效果隊(duì)列)。
newQueue:可選/Array類型用于替換當(dāng)前隊(duì)列內(nèi)容的新隊(duì)列。
callback:Function類型指定的函數(shù),將會追加到隊(duì)列中。該函數(shù)有一個函數(shù)參數(shù),調(diào)用該參數(shù)可以移除并執(zhí)行隊(duì)列中的第一個函數(shù)。

返回值
queue()函數(shù)的返回值是Array/jQuery類型,返回值的類型取決于當(dāng)前queue()函數(shù)執(zhí)行的是獲取操作還是設(shè)置操作。
如果queue()函數(shù)執(zhí)行的是設(shè)置操作(替換隊(duì)列、追加函數(shù)),則返回當(dāng)前jQuery對象本身;如果是獲取操作,則返回獲取到的函數(shù)隊(duì)列(數(shù)組)。
如果當(dāng)前jQuery對象匹配多個元素,讀取數(shù)據(jù)時,queue()函數(shù)只以其中第一個匹配的元素為準(zhǔn)。


實(shí)例:
1. jQuery為我們提供了queue()函數(shù),來把你需要的某些代碼插入到某個隊(duì)列中

$('#test-change1').toggle(function(){
  $('#test-object1').hide('slow').queue(function(next){
    $('#test-object1').appendTo($('#test-goal1'));
    next();
  }).show('slow');

},function(){
  $('#test-object1').hide('slow').queue(function(next){
    $('#test-object1').appendTo($('#test-origin1'));
    next();      
  }).show('slow');
});

2. 自定義隊(duì)列

$("div").queue("custom", function(next) {
  $('div').css({'background':'red'});
  next();
});

但就這段代碼而已,待你真正添加進(jìn)網(wǎng)頁,并且嘗試運(yùn)行,會發(fā)現(xiàn)并非“所見即所得”,壓根就不會有任何效果。

修改后:

$("div").queue("custom", function(next) {
  $('div').css({'background':'red'});
  next();
})
.dequeue("custom"); //this is the key

一般對與dequeue()的定義是“刪除隊(duì)列中最頂部的函數(shù),并且執(zhí)行它”。我并不贊同用“刪除”這個字眼,而是傾向于“取出”,其實(shí)這個函數(shù)的功能就好像是一個數(shù)據(jù)結(jié)構(gòu)中隊(duì)列的指針,待隊(duì)列中前一個函數(shù)執(zhí)行完后,取下一個隊(duì)列最頂端的函數(shù)。

3. queue: false

$("#object")
.delay(1000, "fader")
.queue("fader", function(next) {
  $(this).animate({opacity: 0},
    {duration: 1000, queue: false});
  next();
})
.dequeue("fader")
.animate({top: "-=40"}, {duration: 2000})

前1000毫秒,只有控制高度的“fx”隊(duì)列執(zhí)行,而后1000毫秒,控制不透明度的“fader”隊(duì)列和控制高度的“fx”并行。這里的并行就是queue:false

$('#section3a').slideUp(1000)
      .slideDown(1000)
      .animate({width: '50px'}, {duration: 1000, queue: false});

4. 獲取隊(duì)列長度
比如用隊(duì)列名取得匹配元素的長度:

var $queue=$("div").queue('fx');

很明顯,就是取得隊(duì)列名為'fx'的隊(duì)列,如果想取得長度的話:

var $length=$('div').queue('fx').length;

注意這里的隊(duì)列長度只是匹配元素還未運(yùn)行的隊(duì)列長度,當(dāng)動畫運(yùn)行完之后,隊(duì)列長度會自動歸為0

5.替換隊(duì)列

$('div').queue('fx',function(){
    $('div').slideDown('slow')
         .slideUp('slow')
         .animate({left:'+=100'},4000);
});//定義fx
$('div').queue('fx2',function(){
    $('div').slideDown('fast')
         .slideUp('fast')
         .animate({left:'+=100'},1000);
});//定義fx2

這里定義了兩個隊(duì)列,一個是慢隊(duì)列,也就是默認(rèn)的'fx',另一個是快隊(duì)列'fx2'

當(dāng)點(diǎn)擊某個按鈕時:

$('input').click(function(){
  $('div').queue('fx',fx2);
});

以上就是關(guān)于“jQuery中隊(duì)列queue()函數(shù)怎么使用”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

分享文章:jQuery中隊(duì)列queue()函數(shù)怎么使用
網(wǎng)頁URL:http://www.rwnh.cn/article36/ipjdsg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、微信公眾號商城網(wǎng)站、網(wǎng)站排名、做網(wǎng)站、網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)
望都县| 鹰潭市| 阿拉尔市| 翼城县| 定陶县| 甘肃省| 汝城县| 齐齐哈尔市| 松桃| 朔州市| 慈利县| 高唐县| 岢岚县| 临城县| 永福县| 眉山市| 司法| 东海县| 辛集市| 石家庄市| 镇江市| 吴江市| 祁阳县| 南溪县| 来安县| 丰镇市| 拜泉县| 德化县| 阿瓦提县| 玉山县| 德令哈市| 台州市| 新疆| 阳谷县| 靖江市| 博客| 华亭县| 铁力市| 自贡市| 田东县| 西畴县|