jQuery三組基本動(dòng)畫(huà)與自定義動(dòng)畫(huà)操作實(shí)例總結(jié)
本文實(shí)例講述了jQuery三組基本動(dòng)畫(huà)與自定義動(dòng)畫(huà)操作。分享給大家供大家參考,具體如下:
jQuery提供了三組基本動(dòng)畫(huà),分別是顯示與隱藏、淡入與淡出、滑入與畫(huà)出,這三組基本動(dòng)畫(huà)都是標(biāo)準(zhǔn)的、有規(guī)律的的效果,jQuery還提供了一個(gè)自定義動(dòng)畫(huà)。
1、顯示(show)與隱藏(hide)
顯示(show)與隱藏(hide)是一組動(dòng)畫(huà)
1.1 show方法
show([speed,[easing],[callback]])
-
參數(shù)speed,可選,動(dòng)畫(huà)的執(zhí)行時(shí)間
-
如果不傳,就沒(méi)有動(dòng)畫(huà)效果。
-
毫秒值(比如1000),動(dòng)畫(huà)在1000毫秒執(zhí)行完成(推薦)
-
固定字符串,slow(200)、normal(400)、fast(600),如果傳其他字符串,則默認(rèn)為normal。
-
-
參數(shù)callback,可選,執(zhí)行完動(dòng)畫(huà)后執(zhí)行的回調(diào)函數(shù),每個(gè)元素執(zhí)行一次。
-
參數(shù)easing,可選,這里先不講,后面統(tǒng)一講
1.2 hide方法
與show方法的用法完全一致。
1.3 原理
show和hide修改的是元素的width、height、opacity。
2、滑入(sliderDown)與隱藏(sliderUp)
滑入(slideUp)與滑出(slideDown)是一組動(dòng)畫(huà),效果與卷簾門(mén)類(lèi)似
slideUp/slideDown,使用方法與show/hide基本一致。
2.1 用法
slideDown([speed],[easing],[callback])
-
參數(shù)speed,可選,動(dòng)畫(huà)的執(zhí)行時(shí)間
-
如果不傳,默認(rèn)為normal,注意區(qū)分show/hide
-
毫秒值(比如1000),動(dòng)畫(huà)在1000毫秒執(zhí)行完成(推薦)
-
固定字符串,slow(200)、normal(400)、fast(600),如果傳其他字符串,則默認(rèn)為normal。
-
-
參數(shù)callback,可選,執(zhí)行完動(dòng)畫(huà)后執(zhí)行的回調(diào)函數(shù),每個(gè)元素執(zhí)行一次。
-
參數(shù)easing,可選,這里先不講,后面統(tǒng)一講
2.2 滑入畫(huà)出切換(slideToggle)
$(selector).slideToggle(speed,callback);
如果是隱藏狀態(tài),那么執(zhí)行slideDown操作,如果是顯示狀態(tài),那么執(zhí)行slideUp操作。
2.3 原理
slideDown和slideUp修改的是元素的height,通過(guò)高度變化(向下、向上增大)來(lái)動(dòng)態(tài)地顯示所有匹配的元素。
3、淡入(fadeIn)與淡出(fadeOut)
fadeIn/fadeOut使用方法與show/hide、slideDown/slideUp一致。
3.1 用法
fadeIn([speed],[easing],[callback])
-
參數(shù)speed,可選,動(dòng)畫(huà)的執(zhí)行時(shí)間
-
如果不傳,默認(rèn)為normal
-
毫秒值(比如1000),動(dòng)畫(huà)在1000毫秒執(zhí)行完成(推薦)
-
固定字符串,slow(200)、normal(400)、fast(600),如果傳其他字符串,則默認(rèn)為normal。
-
-
參數(shù)callback,可選,執(zhí)行完動(dòng)畫(huà)后執(zhí)行的回調(diào)函數(shù),每個(gè)元素執(zhí)行一次。
-
參數(shù)easing,可選,這里先不講,后面統(tǒng)一講
3.2 淡入淡出切換(fadeToggle)
fadeToggle([speed,[easing],[callback]])
如果當(dāng)前元素處于隱藏狀態(tài),那么執(zhí)行fadeIn操作,如果處于顯示狀態(tài),那么執(zhí)行fadeOut操作。
3.3 淡入淡出到某個(gè)值(fadeTo)
fadeTo(speed,opacity,[easing],[callback]])
把所有匹配元素的不透明度以漸進(jìn)方式調(diào)整到指定的不透明度
-
參數(shù)speed,必須
-
參數(shù)opacity,0-1之間的數(shù)值(比如0.4),表示淡到某一個(gè)值。
-
參數(shù)callback,可選,執(zhí)行完動(dòng)畫(huà)后執(zhí)行的回調(diào)函數(shù),每個(gè)元素執(zhí)行一次。
與淡入淡出的區(qū)別:淡入淡出只能控制元素的不透明度從 完全不透明 到完全透明;而fadeTo可以指定元素不透明度的具體值。并且時(shí)間參數(shù)是必需的!
fade系列方法:修改的是元素的opacity。
4、三組基本動(dòng)畫(huà)總結(jié)
-
Query給我們提供了三組動(dòng)畫(huà),show/hide、slideUp/slideDown、fadeIn/fadeOut。
-
動(dòng)畫(huà)切換方法:slideToggle、fadeToggle,注意:show和hide沒(méi)有切換的方法。
-
淡入淡出到某個(gè)值:fadeTo方法。
-
show/slideDown/fadeIn三個(gè)是顯示效果、hide/slideUp/fadeOut三個(gè)是隱藏效果。
-
show/hide修改的是元素的height,width,opacity。slide系列方法修改的是元素的height。fade系列方法修改的是元素的opacity。這三種方法修改的這些值,都是帶數(shù)字的,因?yàn)閹Я藬?shù)字才能做漸變。
5、自定義動(dòng)畫(huà)(animate)
animate(params,[speed],[easing],[callback])
-
參數(shù)params,必須,要執(zhí)行動(dòng)畫(huà)的CSS屬性,帶數(shù)字
-
參數(shù)speed,可選,執(zhí)行動(dòng)畫(huà)時(shí)長(zhǎng)
-
參數(shù)easing,可選,這里先不講,后面統(tǒng)一講
-
參數(shù)callback,可選,執(zhí)行完動(dòng)畫(huà)后執(zhí)行的回調(diào)函數(shù),每個(gè)元素執(zhí)行一次。
6、easing參數(shù)
現(xiàn)在來(lái)說(shuō)說(shuō)easing參數(shù)的作用,這個(gè)參數(shù)是控制動(dòng)畫(huà)的速度樣式,這個(gè)參數(shù)只有兩個(gè)取值:
-
swing:擺鐘運(yùn)動(dòng),在開(kāi)頭和結(jié)尾移動(dòng)慢,在中間移動(dòng)速度快。
-
linear:勻速移動(dòng)。
在不指定easing參數(shù)時(shí),jQuery動(dòng)畫(huà)默認(rèn)值是swing。
7、動(dòng)畫(huà)隊(duì)列
在同一個(gè)元素上執(zhí)行多個(gè)動(dòng)畫(huà),那么對(duì)于這個(gè)動(dòng)畫(huà)來(lái)說(shuō),后面的動(dòng)畫(huà)會(huì)被放到動(dòng)畫(huà)隊(duì)列中,等前面的動(dòng)畫(huà)執(zhí)行完成了才會(huì)執(zhí)行(聯(lián)想:地鐵進(jìn)站)。
8、停止動(dòng)畫(huà)
要停止動(dòng)畫(huà),可以使用stop()方法。stop(clearQueue, jumpToEnd)。
8.1、stop()
stop方法接受兩個(gè)參數(shù),這個(gè)兩個(gè)參數(shù)都是可選的,為Boolean值:
-
clearQueue,是否清除動(dòng)畫(huà)隊(duì)列;
-
jumpToEnd,是否跳轉(zhuǎn)到動(dòng)畫(huà)的最終效果。
當(dāng)然了,一般我們不需要傳遞參數(shù),直接使用stop()。如果直接使用stop()方法,則會(huì)理解停止當(dāng)前正在執(zhí)行的動(dòng)畫(huà),如果接下來(lái)還有動(dòng)畫(huà)等待進(jìn)行,則以當(dāng)前狀態(tài)開(kāi)始接下來(lái)的動(dòng)畫(huà)。
8.2、判斷元素是否處于動(dòng)畫(huà)狀態(tài)
動(dòng)畫(huà)積累:在使用animate()方法的時(shí)候,要避免動(dòng)畫(huà)積累而導(dǎo)致的動(dòng)畫(huà)與用戶(hù)的行為不一致。當(dāng)用戶(hù)快速在某個(gè)元素上執(zhí)行animate動(dòng)畫(huà)時(shí),就會(huì)出現(xiàn)動(dòng)畫(huà)積累。
解決方法是判斷元素是否處于動(dòng)畫(huà)狀態(tài),如果元素不處于動(dòng)畫(huà)狀態(tài),才為元素添加新的動(dòng)畫(huà),否則不添加。
if( ! $(element).is(":animate") ){ //判斷元素是否正處于動(dòng)畫(huà)狀態(tài)
//如果當(dāng)前沒(méi)有進(jìn)行動(dòng)畫(huà),則添加新的動(dòng)畫(huà)
}
感興趣的朋友可以使用在線(xiàn)HTML/CSS/JavaScript代碼運(yùn)行工具:http://tools.jb51.net/code/HtmlJsRun測(cè)試上述代碼運(yùn)行效果。
更多關(guān)于jQuery相關(guān)內(nèi)容還可查看本站專(zhuān)題:《jQuery動(dòng)畫(huà)與特效用法總結(jié)》、《jQuery切換特效與技巧總結(jié)》、《jQuery擴(kuò)展技巧總結(jié)》、《jQuery常用插件及用法總結(jié)》、《jQuery拖拽特效與技巧總結(jié)》、《jQuery表格(table)操作技巧匯總》、《jQuery常見(jiàn)經(jīng)典特效匯總》及《jquery選擇器用法總結(jié)》
希望本文所述對(duì)大家jQuery程序設(shè)計(jì)有所幫助。
- 用js實(shí)現(xiàn)的模擬jquery的animate自定義動(dòng)畫(huà)(2.5K)
- 深入理解jquery自定義動(dòng)畫(huà)animate()
- jQuery中使用animate自定義動(dòng)畫(huà)的方法
- Jquery 自定義動(dòng)畫(huà)概述及示例
- jQuery自定義動(dòng)畫(huà)函數(shù)實(shí)例詳解(附demo源碼)
- jQuery使用動(dòng)畫(huà)隊(duì)列自定義動(dòng)畫(huà)操作示例
- jQuery動(dòng)畫(huà)animate方法使用介紹
- jquery animate 動(dòng)畫(huà)效果使用說(shuō)明
- JQuery動(dòng)畫(huà)animate的stop方法使用詳解
- jQuery實(shí)現(xiàn)圖像旋轉(zhuǎn)動(dòng)畫(huà)效果
- 分享8款優(yōu)秀的 jQuery 加載動(dòng)畫(huà)和進(jìn)度條插件
- Jquery中使用show()與hide()方法動(dòng)畫(huà)顯示和隱藏圖片
相關(guān)文章
jQuery實(shí)現(xiàn)html雙向綁定功能示例
這篇文章主要介紹了jQuery實(shí)現(xiàn)html雙向綁定功能,涉及jQuery針對(duì)HTML頁(yè)面元素事件綁定相關(guān)操作技巧,需要的朋友可以參考下2017-10-10
jQuery extend()詳解及簡(jiǎn)單實(shí)例
這篇文章主要介紹了jQuery extend()詳解及簡(jiǎn)單實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-05-05
jQuery實(shí)現(xiàn)導(dǎo)航滾動(dòng)到指定內(nèi)容效果完整實(shí)例【附demo源碼下載】
這篇文章主要介紹了jQuery實(shí)現(xiàn)導(dǎo)航滾動(dòng)到指定內(nèi)容效果,結(jié)合完整實(shí)例形式分析了頁(yè)面元素屬性動(dòng)態(tài)變換操作相關(guān)技巧,涉及jQuery插件jquery.scrollto.js的使用,并附帶demo源碼下載供讀者下載參考,需要的朋友可以參考下2016-09-09
greybox——不開(kāi)新窗口看新的網(wǎng)頁(yè)
這篇文章主要介紹了greybox——不開(kāi)新窗口看新的網(wǎng)頁(yè)2007-02-02
讀jQuery之七 判斷點(diǎn)擊了鼠標(biāo)哪個(gè)鍵的代碼
jQuery中的which即可以是鍵盤(pán)的鍵值,也可以是鼠標(biāo)的鍵值。2011-06-06
jQuery實(shí)現(xiàn)動(dòng)態(tài)操作table行
這篇文章主要為大家詳細(xì)介紹了jQuery實(shí)現(xiàn)動(dòng)態(tài)操作table行,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-11-11
jQuery制作圣誕主題頁(yè)面 更像是愛(ài)情影集
這篇文章主要為大家詳細(xì)介紹了jQuery制作圣誕主題頁(yè)面的方法,類(lèi)似動(dòng)感影集,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-08-08
jQuery中 $ 符號(hào)的沖突問(wèn)題及解決方案
在jQuery中,$是jQuery的別名,為了書(shū)寫(xiě)方便,我們更習(xí)慣用$('#id')這一類(lèi)的方式來(lái)書(shū)寫(xiě)代碼。這篇文章給大家分享jQuery中 $ 符號(hào)的沖突問(wèn)題及解決方案,感興趣的朋友一起看看吧2016-11-11

