jQuery動畫效果和動畫隊列

一.基礎(chǔ)效果

.hide([duration][,easing][,complete])

用于隱藏元素搀擂,沒有參數(shù)的時候相當(dāng)于直接設(shè)置display屬性

$('.box').hide()
//相當(dāng)于
$('.box').css('display','none')

.show([duration][,easing][,complete])

用于顯示元素寻拂,用法與hide相似

$('.show').on('click',function(){
  $('.box').show()
})

.toggle([duration][,easing][,complete])

用來切換顯示和隱藏元素

$('.toggle').on('click',function(){
  $('.box').toggle(300);
});

二.漸變效果

.fadeIn([duration][,easing][,complete])

通過淡入的方式顯示元素

$('.fadeIn').on('click',function(){
  $('.box').fadeIn('slow')
})

.fadeOut([duration][,easing][,complete])

通過淡出的方式隱藏匹配元素

$('.fadeOut').on('click',function(){
  $('.box').fadeOut('slow');
});

.fadeTo(duration,opacity[,easing][,complete])

調(diào)整匹配元素的透明度瓶佳,該方法通過調(diào)整元素的不透明度去做效果

$('.fadeTo').on('click',function(){
  $('.box').fadeTo('slow',0.2);
});

.fadeToggle([duration][,easing][,complete])

匹配元素切換淡入(顯示)和淡出(隱藏)的效果

$('.fadeToggle').on('click',function(){
  $('.box').fadeToggle('slow');
});

三.滑動效果

.slideDown( [duration ] [, easing ] [, complete ] )

用滑動動畫的效果顯示匹配的元素

$('.slideDown').on('click',function(){
  $('.box').slideDown('slow');
});

.slideUp( [duration ] [, easing ] [, complete ] )

用滑動動畫的效果隱藏匹配的元素

$('.slideUp').on('click',function(){
  $('.box').slideUp('slow');
});

.slideToggle( [duration ] [, easing ] [, complete ] )

用滑動動畫顯示或隱藏一個匹配元素

$('.slideToggle').on('click',function(){
  $('.box').slideToggle('slow');
});

具體的動畫演示:http://js.jirengu.com/xagoj/2/

四.動畫隊列

問題一:動畫是同步還是異步的桌粉?

$('.hide').on('click',function(){
  $('.box').hide(1400);
  console.log('hide');
})

在上面這個例子中蒸绩,執(zhí)行代碼后,如果是同步铃肯,應(yīng)該是動畫完成后控制臺輸出hide侵贵,但如果是異步,應(yīng)該是動畫還沒有完成時缘薛,控制臺已經(jīng)輸出hide(如果不是很明顯窍育,適當(dāng)?shù)脑黾訒r間)

結(jié)果是當(dāng)動畫還沒有完成時,控制臺就已經(jīng)輸出了hide宴胧,這說明動畫是異步的

問題二:如果我想要動畫完成后在輸出漱抓,這樣要怎么寫?

我們只需要在動畫方法中添加一個回掉函數(shù)

$('.hide').on('click',function(){
  $('.box').hide(1400,function(){
       console.log('hide');
});
})

可是如果我想讓很多的效果一個個依次展示恕齐,是不是要這樣(看下面的例子)

$box.hide(1000, function(){
   $box.show(1000, function(){
     $box.fadeOut('slow',function(){
       $box.fadeIn('slow',function(){
         $box.slideUp(function(){
           $box.slideDown(function(){
             console.log('動畫執(zhí)行完畢')
           })
         })
       })
     })
   })
})

這就叫回調(diào)地獄寫法乞娄。。显歧。仪或。
我們可以換一種寫法叫做jQuery動畫隊列的寫法

$box.hide(1000)
    .show(1000)
    .fadeOut()
    .fadeIn()
    .slideUp()
    .slideDown(function(){
      console.log('動畫執(zhí)行完畢了')
    })
動畫隊列其實就是動畫隊列執(zhí)行的一個順序機制,對于同一對象的動畫效果會按照順序放入到動畫隊列中士骤,在動畫隊列中從下往上執(zhí)行動畫
image

五. 自定義動畫

當(dāng)上面的動畫已經(jīng)不滿足需求的時候范删,jQuery提供了自定義動畫的方法

.animate( properties [, duration ] [, easing ] [, complete ] )

properties是一個CSS屬性和值的對象,動畫將根據(jù)這組對象移動。

$('.animate').on('click',function(){
  $('.box').animate({
    left: '+=100',//對于左右的移動是在已經(jīng)定位的前提下
    width: '200px'
  },500);
});

這與css差不多拷肌,只不過css是一下子變化到旦,而animate是漸變的變化

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末旨巷,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子添忘,更是在濱河造成了極大的恐慌采呐,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件搁骑,死亡現(xiàn)場離奇詭異斧吐,居然都是意外死亡,警方通過查閱死者的電腦和手機仲器,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門会通,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人娄周,你說我怎么就攤上這事涕侈。” “怎么了煤辨?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵裳涛,是天一觀的道長。 經(jīng)常有香客問我众辨,道長端三,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任鹃彻,我火速辦了婚禮郊闯,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蛛株。我一直安慰自己团赁,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布谨履。 她就那樣靜靜地躺著欢摄,像睡著了一般。 火紅的嫁衣襯著肌膚如雪笋粟。 梳的紋絲不亂的頭發(fā)上怀挠,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天,我揣著相機與錄音害捕,去河邊找鬼绿淋。 笑死,一個胖子當(dāng)著我的面吹牛尝盼,可吹牛的內(nèi)容都是我干的吞滞。 我是一名探鬼主播,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼东涡,長吁一口氣:“原來是場噩夢啊……” “哼冯吓!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起疮跑,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤组贺,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后祖娘,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體失尖,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年渐苏,在試婚紗的時候發(fā)現(xiàn)自己被綠了掀潮。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡琼富,死狀恐怖仪吧,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情鞠眉,我是刑警寧澤薯鼠,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站械蹋,受9級特大地震影響出皇,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜哗戈,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一郊艘、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧唯咬,春花似錦纱注、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至煮剧,卻和暖如春斥滤,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背勉盅。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工佑颇, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人草娜。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓挑胸,卻偏偏與公主長得像,于是被迫代替她去往敵國和親宰闰。 傳聞我的和親對象是個殘疾皇子茬贵,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 隱藏元素的hide方法 讓頁面上的元素不可見簿透,一般可以通過設(shè)置css的display為none屬性。但是通過css...
    老夫撩發(fā)少年狂閱讀 1,091評論 0 2
  • jQuery中隱藏元素的hide方法 讓頁面上的元素不可見解藻,一般可以通過設(shè)置css的display為none屬性老充。...
    阿r阿r閱讀 1,144評論 0 4
  • 題目1: jQuery 能做什么? 選擇網(wǎng)頁元素 改變結(jié)果集 元素的操作:取值和賦值 元素的操作:移動 元素的操作...
    cheneyzhangch閱讀 421評論 0 1
  • (續(xù)jQuery基礎(chǔ)(2)) 四螟左、動畫篇 第1章 動畫基礎(chǔ)隱藏和顯示 (1)隱藏元素的hide方法 讓頁面上的元素...
    凜0_0閱讀 458評論 0 6
  • 很多時候啡浊,前行的腳步已不再匆匆,只喜歡歲月里有著暖暖的安恬胶背。其實巷嚣,似水流年,有太多的美好遺失在匆匆里钳吟,有太多的遺憾...
    立來閱讀 223評論 0 0