效果
基本
show():顯示隱藏的匹配元素
<p style="display: none">Hello</p>
代碼:$("p").show()
show(speed,callback):顯示所有匹配的元素,并在顯示完成后可選地觸發一個回調函數
<p style="display: none">Hello</p>
代碼:$("p").show("slow");
代碼://用迅速的動畫將隱藏的段落顯示出來,歷時200毫秒。
$("p").show("fast",function(){
$(this).text("Animation Done!");
});
代碼://將隱藏的段落用將近4秒的時間顯示出來
$("p").show(4000,function(){
$(this).text("Animation Done...");
});
hide():隱藏顯示的元素
$("p").hide()
hide(speed,callback):和show(speed,callback)相反~
toggle():切換元素的可見狀態。如果元素是可見的,切換為隱藏的;如果元素是隱藏的,切換為可見的
<p>Hello</p><p style="display: none">Hello Again</p>
代碼:$("p").toggle()
結果:<p tyle="display: none">Hello</p><p style="display: block">Hello Again</p>
滑動
slideDown(speed,callback):通過高度變化(向下增大)來動態地顯示所有匹配的元素,在顯示完成后可選地觸發一個回調函數。
代碼:用600毫秒緩慢的將段落滑下
$("p").slideDown("slow");
代碼:用200毫秒快速將段落滑下,之后彈出一個對話框
$("p").slideDown("fast",function(){
alert("Animation Done.");
});
slideUp(speed,callback):通過不透明度的變化來實現所有匹配元素的淡出效果,并在動畫完成后可選地觸發一個回調函數
代碼:用600毫秒緩慢的將段落滑上
$("p").slideUp("slow");
代碼:用200毫秒快速將段落滑上,之后彈出一個對話框
$("p").slideUp("fast",function(){
alert("Animation Done.");
});
slideToggle(speed,callback):通過高度變化來切換所有匹配元素的可見性,并在切換完成后可選地觸發一個回調函數
代碼:$("p").slideToggle("slow");
代碼:用200毫秒快速將段落滑上或滑下,之后彈出一個對話框
$("p").slideToggle("fast",function(){
alert("Animation Done.");
});
淡入淡出
fadeIn(speed,callback):通過不透明度的變化來實現所有匹配元素的淡入效果,并在動畫完成后可選地觸發一個回調函數
代碼:用600毫秒緩慢的將段落淡入
$("p").fadeIn("slow");
代碼:用200毫秒快速將段落淡入,之后彈出一個對話框
$("p").fadeIn("fast",function(){
alert("Animation Done.");
});
fadeOut(speed,callback):通過不透明度的變化來實現所有匹配元素的淡出效果,并在動畫完成后可選地觸發一個回調函數
代碼:用600毫秒緩慢的將段落淡出
$("p").fadeOut("slow");
代碼:用200毫秒快速將段落淡出,之后彈出一個對話框
$("p").fadeOut("fast",function(){
alert("Animation Done.");
});
fadetTo(speed,opacity,callback):把所有匹配元素的不透明度以漸進方式調整到指定的不透明度,并在動畫完成后可選地觸發一個回調函數
代碼:用600毫秒緩慢的將段落的透明度調整到0.66,大約2/3的可見度
$("p").fadeTo("slow", 0.66);$("p").fadeTo("slow", 0.66);
代碼:用200毫秒快速將段落的透明度調整到0.25,大約1/4的可見度,之后彈出一個對話框
$("p").fadeTo("fast", 0.25, function(){
alert("Animation Done.");
});
自定義
animate(params[,duration[,easing[,callback]]])
說明:用于創建自定義動畫的函數
params (Options) : 一組包含作為動畫屬性和終值的樣式屬性和及其值的集合
duration (String,Number) : (可選) 三種預定速度之一的字符串("slow", "normal", or "fast")或表示動畫時長的毫秒數值(如:1000)
easing (String) : (可選) 要使用的擦除效果的名稱(需要插件支持).默認jQuery提供"linear" 和 "swing".
callback (Function) : (可選) 在動畫完成時執行的函數
<button id="go"> Run</button>
<div id="block">Hello!</div>
代碼:// 在一個動畫中同時應用三種類型的效果
$("#go").click(function(){
$("#block").animate({
width: "90%",
height: "100%",
fontSize: "10em",
borderWidth: 10
}, 1000 );
});
<button id="left">«</button> <button id="right">»</button>
<div class="block"></div>
代碼:讓指定元素左右移動
$("#right").click(function(){
$(".block").animate({left: '+50px'}, "slow");
});
$("#left").click(function(){
$(".block").animate({left: '-50px'}, "slow");
});
代碼:在600毫秒內切換段落的高度和透明度
$("p").animate({
height: 'toggle', opacity: 'toggle'
}, "slow");
代碼:用500毫秒將段落移到left為50的地方并且完全清晰顯示出來(透明度為1)
$("p").animate({
left: 50, opacity: 'show'
}, 500);
代碼:一個使用“easein”函數提供不同動畫樣式的例子。只有使用了插件來提供這個“easein”函數,這個參數才起作用。
$("p").animate({
opacity: 'show'
}, "slow", "easein");
animate(params,options)
params (Options) : 一組包含作為動畫屬性和終值的樣式屬性和及其值的集合
options (Options) : 一組包含動畫選項的值的集合。
選項
duration (String,Number) : (默認值: "normal") 三種預定速度之一的字符串("slow", "normal", or "fast")或表示動畫時長的毫秒數值(如:1000)
easing (String) : (默認值: "swing") 要使用的擦除效果的名稱(需要插件支持).默認jQuery提供"linear" 和 "swing".
complete (Function) : 在動畫完成時執行的函數
step (Callback) : Template:APICallback
queue (Boolean) : (默認值: true) 設定為false將使此動畫不進入動畫隊列 (jQuery 1.2中新增)
示例
第一個按鈕按了之后展示了不在隊列中的動畫。在div擴展到90%的同時也在增加字體,一旦字體改變完畢后,邊框的動畫才開始。
第二個按鈕按了之后就是一個傳統的鏈式動畫,即等前一個動畫完成后,后一個動畫才會開始.
<button id="go1">» Animate Block1</button>
<button id="go2">» Animate Block2</button>
<div id="block1">Block1</div><div id="block2">Block2</div>
代碼:
$("#go1").click(function(){
$("#block1").animate( { width: "90%"}, { queue: false, duration: 5000 } )
.animate( { fontSize: '10em' } , 1000 )
.animate( { borderWidth: 5 }, 1000);
});
$("#go2").click(function(){
$("#block2").animate( { width: "90%"}, 1000 )
.animate( { fontSize: '10em' } , 1000 )
.animate( { borderWidth: 5 }, 1000);
});
代碼:用600毫秒切換段落的高度和透明度
$("p").animate({
height: 'toggle', opacity: 'toggle'
}, { duration: "slow" });
代碼:用500毫秒將段落移到left為50的地方并且完全清晰顯示出來(透明度為1)
$("p").animate({
left: 50, opacity: 'show'
}, { duration: 500 });
代碼:一個使用“easein”函數提供不同動畫樣式的例子。只有使用了插件來提供這個“easein”函數,這個參數才起作用。
$("p").animate({
opacity: 'show'
}, { duration: "slow", easing: "easein" });
stop():停止所有在指定元素上正在運行的動畫
<button id="go">Go</button> <button id="stop">STOP!</button>
<div class="block"></div>
<button id="go">Go</button> <button id="stop">STOP!</button>
<div class="block"></div>
代碼:點擊Go之后開始動畫,點Stop之后會在當前位置停下來
// Start animation
$("#go").click(function(){
$(".block").animate({left: '+200px'}, 5000);
});
// Stop animation when button is clicked
$("#stop").click(function(){
$(".block").stop();
});
queue():返回指向第一個匹配元素的隊列(將是一個函數數組)
<style>
div { margin:3px; width:40px; height:40px;
position:absolute; left:0px; top:30px;
background:green; display:none; }
div.newcolor { background:blue; }
span { color:red; }
</style>
<button id="show">Show Length of Queue</button><span></span><div></div>
代碼:顯示隊列長度
$("#show").click(function () {
var n = $("div").queue("fx");
$("span").text("Queue length is: " + n.length);
});
function runIt() {
$("div").show("slow");
$("div").animate({left:'+=200'},2000);
$("div").slideToggle(1000);
$("div").slideToggle("fast");
$("div").animate({left:'-=200'},1500);
$("div").hide("slow");
$("div").show(1200);
$("div").slideUp("normal", runIt);
}
runIt();
queue(callback):在匹配的元素的動畫隊列中添加一個函數
queue(queue):將匹配元素的動畫隊列用新的一個隊列來代替(函數數組).
dequeue():從動畫隊列中移除一個隊列函數
--
學海無涯