分享一些常用的jQuery動(dòng)畫事件和動(dòng)畫函數(shù)
部分jQuery常用的動(dòng)畫函數(shù),整理了一下,在做交互式頁(yè)面的時(shí)候挺有用的
.css('a','12px');
.css({
a:'12px',
b:'#fff'
});
.show();
.hide();
.toggle();
.fadeIn();
.fadeOut();
.fadeToggle();
.slideDown();
.slideUp();
.slideToggle();
.text('string');
.animate({
a:'40px',
b:'ccc'
},200)
.fadeTo(600,0.4);
然后又整理了一些animate函數(shù)能夠操作的css屬性,其實(shí)也是從網(wǎng)上其他地方找來(lái)的(http://www.dbjr.com.cn/article/75510.htm):
backgroundPosition borderWidth borderBottomWidth borderLeftWidth borderRightWidth borderTopWidth borderSpacing margin marginBottom marginLeft marginRight marginTop outlineWidth padding paddingBottom paddingLeft paddingRight paddingTop height width maxHeight maxWidth minHeight maxWidth font
fontSize(在animate函數(shù)的css參數(shù)指定并不同于標(biāo)準(zhǔn)css屬性,例如這個(gè)css標(biāo)準(zhǔn)是:font-size。同理上
面很多也是這樣的情況)
bottom left right top letterSpacing wordSpacing lineHeight textIndent opacity
jQuery動(dòng)畫函數(shù)
jQuery動(dòng)畫函數(shù)分三類:
1、基本動(dòng)畫函數(shù):既有透明漸變又有滑動(dòng)效果,常用動(dòng)畫效果。
2、滑動(dòng)動(dòng)畫函數(shù):僅使用滑動(dòng)效果。
3、淡入淡出動(dòng)畫函數(shù):僅使用淡入淡出效果。
一.基本動(dòng)畫函數(shù):
1、show()
顯示隱藏匹配元素。這個(gè)就是'show( speed, [callback] )'無(wú)動(dòng)畫的版本。如果選擇的元素是可見的,這個(gè)方法將不會(huì)改變?nèi)魏螙|西。無(wú)論這個(gè)元素是通過(guò)hide()方法隱藏的還是在CSS里設(shè)置了display:none;,這個(gè)方法都將有效。
例如:顯示所有段落,$("p").show()
2、show(speed,[callback])
以優(yōu)雅的動(dòng)畫顯示匹配的元素,并且在顯示完成后可選擇返回一個(gè)回調(diào)函??筛鶕?jù)指定的速度動(dòng)態(tài)改變每個(gè)匹配元素高度、寬度和不透明度。
例如:用緩慢的動(dòng)畫將隱藏的段落顯示出來(lái),歷時(shí)600毫秒,$("p").show(600)
3、hide()
隱藏顯示元素。這個(gè)就是 'hide( speed, [callback] )'的無(wú)動(dòng)畫版。如果選擇的元素是隱藏的,這個(gè)方法將不會(huì)改變?nèi)魏螙|西。
例如:隱藏所有段落,$("p").hide()
4、hide(speed,[callback])
以優(yōu)雅的動(dòng)畫隱藏所有匹配的元素,并在顯示完成后可選的觸發(fā)一個(gè)回調(diào)函數(shù)。可以根據(jù)指定的速度動(dòng)態(tài)地改變每個(gè)匹配元素的高度、寬度和不透明度。在jQuery1.3中,padding和margin也會(huì)有動(dòng)畫,效果更流暢。
例如:用600ms的時(shí)間將段落緩慢的隱藏,$("p").hide("slow");
5、toggle
切換元素的可見狀態(tài)。如果元素時(shí)可見的,切換為隱藏的;如果元素是隱藏的,切換為可見的。
例如:切換所有段落的可見狀態(tài),$("p").toggle()
6、toggle(switch)
根據(jù)switch參數(shù)切花元素的可見狀態(tài)(true為可見,false為隱藏)。如果switch設(shè)為true,則調(diào)用show()方法來(lái)顯示匹配的元素,如果switch設(shè)為false則調(diào)用hide()來(lái)隱藏元素。
例如:切換所有段落的可見狀態(tài),varflip=0;$("button").click(function(){$("p").toggle(flip++%2==0);});
7、toggle(speed,[callback])
以優(yōu)雅的動(dòng)畫切換所有匹配的元素,并在顯示完成后可選的觸發(fā)一個(gè)回調(diào)函數(shù)??筛鶕?jù)指定的速度動(dòng)態(tài)的改變每個(gè)匹配元素的高度、寬度和不透明度。jquery1.3,padding和margin也會(huì)有動(dòng)畫,效果更流暢。
例如:用200ms將段落迅速切換顯示狀態(tài),之后彈出一個(gè)對(duì)話框,$("p").toggle("fast",function(){alert("hello!");});
二.滑動(dòng)動(dòng)畫函數(shù)sliding
1、slideDown(speed,[callback])
通過(guò)高度變化(向下增大)來(lái)動(dòng)態(tài)的顯示所有匹配的元素,在顯示完成后可選擇的處發(fā)一個(gè)回調(diào)函數(shù)。這個(gè)動(dòng)畫效果只調(diào)整元素的高度,可以是匹配的元素以“滑動(dòng)”的方式顯示出來(lái)。在jQuery1.3中,上下的padding和margin也會(huì)有動(dòng)畫,效果更流暢。
例如:用600ms緩慢的將段落滑下,$("p").slideDown("slow");
2、slideUp(speed,[callback])
通過(guò)高度變化(向上減?。﹣?lái)動(dòng)態(tài)的隱藏所有匹配的元素,在隱藏完成后可選的觸發(fā)一個(gè)回調(diào)函數(shù)。
例如:600ms緩慢的將段落滑上,$("p").slideUp("slow");
3、slideToggle(speed,[callback])
通過(guò)高度變化來(lái)切換所有匹配元素的可見性,并在切換完成后可選的觸發(fā)一個(gè)回調(diào)函數(shù)。
例如:600ms緩慢的將段落滑上或滑下,$("p").slideTogggle("slow");
三.淡入淡出函數(shù)Fading
1、fadeIn(speed,[callback])
通過(guò)透明度的變化來(lái)實(shí)現(xiàn)所有匹配元素的淡入效果,并在動(dòng)畫完成后可選的調(diào)用一個(gè)回調(diào)函數(shù)。這個(gè)動(dòng)畫只調(diào)整元素的不透明度,也就是說(shuō)所有匹配的元素的高度和寬度不會(huì)發(fā)生變化。
例如:用600ms緩慢的將段落淡入,$("p").fadeIn("slow");
2、fadeOut(speed,[callback])
通過(guò)不透明度的變化來(lái)實(shí)現(xiàn)所有匹配元素的淡出效果,并在動(dòng)畫完成后可選擇的觸發(fā)一個(gè)回調(diào)函數(shù)。
例如:用600ms緩慢的將段落淡出,$("p").fadeOut("slow");
3、fadeTo(speed,opacity,[callback])
把所有匹配元素的不透明度以漸進(jìn)方式調(diào)整到指定的不透明度,并在動(dòng)畫完成后可選的出發(fā)一個(gè)回調(diào)函數(shù)。
例如:用600ms緩慢將段落的透明度調(diào)整到0.66,大約2/3的可見度,$("p").fadeTo("slow",0.66)
四、自定義動(dòng)畫函數(shù)Custom
1、animate(params,[duration],[easing],[callback])用于創(chuàng)建自定義動(dòng)畫的函數(shù)。這個(gè)函數(shù)的關(guān)鍵在于制定動(dòng)畫形式及結(jié)果樣式屬性對(duì)象。這個(gè)對(duì)象中每個(gè)屬性都表示一個(gè)可以變化的樣式屬性(如height、top或opacity)。注意:所有指定的屬性必須用駱駝形式,比如用marginLeft代替margin-left。而每個(gè)屬性的值表示這個(gè)樣式屬性到多少是動(dòng)畫結(jié)束。如果是一個(gè)數(shù)值,樣式屬性就會(huì)從當(dāng)前的值漸變到指定的值。如果使用的是hide、show、toggle這樣的字符串值,則會(huì)就該屬性調(diào)用默認(rèn)的動(dòng)畫形式。
例如:點(diǎn)擊按鈕后div元素的幾個(gè)不同屬性一同變化,
$("#go").click(function(){
$("#block").animate({
width:"90%",height:"100%",fontSize:"10em",borderWidth:10
},1000);
});
2、stop([clearQueue],[gotoEnd])
停止所有在指定元素上正在運(yùn)行的動(dòng)畫。如果隊(duì)列中有等待執(zhí)行的動(dòng)畫(并且clearQueue沒有設(shè)為true),他們將被馬上執(zhí)行clearQueue(Boolean):如果設(shè)置成true,則清空隊(duì)列??梢粤⒓唇Y(jié)束動(dòng)畫。gotoEnd(Boolean):讓當(dāng)前正在執(zhí)行的動(dòng)畫立即完成,并且重設(shè)show和hide的原始樣式,調(diào)用回調(diào)函數(shù)等。
例如:點(diǎn)擊Go之后開始動(dòng)畫,點(diǎn)Stop之后會(huì)在當(dāng)前位置停下來(lái):
// 開始動(dòng)畫
$("#go").click(function(){
$(".block").animate({left: '+200px'}, 5000);
});
// 當(dāng)點(diǎn)擊按鈕后停止動(dòng)畫
$("#stop").click(function(){
$(".block").stop();
});
[javascript] view plaincopy
$(document).ready(function(){
$(".box h3").toggle(function(){
$(this).next(".text").animate({height: 'toggle', opacity: 'toggle'}, "slow");
$(this).addClass("arrow");
return false;
},function(){
$(this).next(".text").animate({height: 'toggle', opacity: 'toggle'}, "slow");
$(this).removeClass("arrow");
return false;
});
});
相關(guān)文章
jQuery插件formValidator實(shí)現(xiàn)表單驗(yàn)證
這篇文章主要為大家詳細(xì)介紹了jQuery插件formValidator實(shí)現(xiàn)表單驗(yàn)證的相關(guān)資料,需要的朋友可以參考下2016-05-05
jQuery實(shí)現(xiàn)可以計(jì)算進(jìn)制轉(zhuǎn)換的計(jì)算器
這篇文章主要為大家詳細(xì)介紹了jQuery實(shí)現(xiàn)可以計(jì)算進(jìn)制轉(zhuǎn)換的計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-10-10
jQuery打印指定區(qū)域Html頁(yè)面并自動(dòng)分頁(yè)
項(xiàng)目中需要用到打印HTML頁(yè)面,需要指定區(qū)域打印,使用jquery.PrintArea.js 插件實(shí)現(xiàn)分頁(yè),需要的朋友可以參考下2014-07-07
jQuery動(dòng)畫_動(dòng)力節(jié)點(diǎn)節(jié)點(diǎn)Java學(xué)院整理
用JavaScript手動(dòng)實(shí)現(xiàn)動(dòng)畫效果,需要編寫非常復(fù)雜的代碼。下面給分享jQuery內(nèi)置的幾種動(dòng)畫樣式,需要的朋友參考下吧2017-07-07
jquery 無(wú)限級(jí)聯(lián)菜單案例分享
phpcms的地區(qū)級(jí)聯(lián)菜單,感覺寫的挺有意思于是自己也實(shí)現(xiàn)了個(gè),感興趣的各位路過(guò)的可以參考下哈,希望本例可以幫助到你2013-03-03
jQuery實(shí)現(xiàn)底部浮動(dòng)窗口效果
這篇文章主要介紹了jQuery實(shí)現(xiàn)底部浮動(dòng)窗口效果,涉及jQuery事件響應(yīng)及頁(yè)面元素動(dòng)態(tài)變換的相關(guān)操作技巧,需要的朋友可以參考下2016-09-09

