淡入淡出效果
方法列表
方法 | 描述 |
fadeIn() | 用于显示所有匹配的元素,并带有淡入的过渡动画效果。 |
fadeOut() | 用于隐藏所有匹配的元素,并带有淡出的过渡动画效果。 |
fadeToggle() | 用于切换所有匹配的元素,并带有淡入/淡出的过渡动画效果。 |
fadeTo() | 用渐进方式把所有匹配元素的不透明度调整到指定的不透明度,并在动画完成后可选地触发一个回调函数。 |
方法说明
fadeIn()
用于显示所有匹配的元素,并带有淡入的过渡动画效果。
淡入的动画效果,即元素的不透明度的比例从0%逐渐增加到100%。
如果元素本身是可见的,则不对其作任何改变。如果元素是隐藏的,则使其可见。
与该函数相对的是fadeOut()函数,用于隐藏所有匹配的元素,并带有淡出的过渡动画效果。
语法:
- .fadeIn( [ duration ] [, easing ] [, complete ] )
- .fadeIn( options )
参数说明:
参数 | 描述 |
duration | 可选/String/Number类型 指定过渡动画运行多长时间(毫秒数),默认值为400。该参数也可以为字符串”fast”(=200)或”slow”(=600)。 |
easing | 可选/String类型 指定使用何种动画效果,默认为”swing”,还可以设为”linear”或其他自定义的动画样式的函数名称。 |
complete | 可选/Function类型 元素显示完毕后需要执行的函数。函数内的this指向当前DOM元素。 |
options | Object类型 指定的选项参数对象。 |
参数options对象可以识别如下的属性(以下属性均是可选的):
属性 | 属性描述 |
duration | 参见参数duration。 |
easing | 参见参数easing。 |
complete | 参见参数complete。 |
queue | Boolean类型 指示是否将动画放入效果队列中,默认为true。从1.7版本开始,该参数可以为字符串,用于放入指定名称的效果队列。如果你指定的队列不会自动开始,你需要手动调用dequeue(“queueName”)来启动队列。 |
此外,jQuery 1.4 和 1.8 还为参数options新增了许多新的选项支持,但这些参数并不常用
HTML:
淡入的显示效果:
<select id="animation">
<option value="1">fadeIn( )</option>
<option value="2">fadeIn( "slow" )</option>
<option value="3">fadeIn( 3000 )</option>
<option value="4">fadeIn( 2000, complete )</option>
<option value="5">fadeIn( 1000, "linear" )</option>
<option value="6">fadeIn( options )</option>
</select>
<input id="btnFadeIn" type="button" value="显示" > <input id="btnHide" type="button" value="隐藏" >
javaScript代码:
//【显示】按钮
$("#btnFadeIn").click( function(){
var v = $("#animation").val();
if( v == "1" ){
$("p").fadeIn( );
}else if(v == "2"){
$("p").fadeIn( "slow" );
}else if(v == "3"){
$("p").fadeIn( 3000 );
}else if(v == "4"){
$("p").fadeIn( 2000, function(){
alert("显示完毕!");
} );
}else if(v == "5"){
$("p").fadeIn( 1000, "linear" );
}else if(v == "6"){
$("p").fadeIn( { duration: 1000 } );
}
} );
// 【隐藏】按钮
$("#btnHide").click( function(){
$("p").hide( );
} );
fadeOut()
用于隐藏所有匹配的元素,并带有淡出的过渡动画效果。
所谓”淡出”的动画效果,即元素的不透明度的比例从100%逐渐减小到0%。
如果元素本身是隐藏的,则不对其作任何改变。如果元素是可见的,则将其隐藏。
与该函数相对的是fadeIn()函数,用于显示所有匹配的元素,并带有淡入的过渡动画效果。
语法:
- .fadeOut( [ duration ] [, easing ] [, complete ] )
- .fadeOut( options )
参数说明:
fadeOut参数说明同fadeIn;
fadeToggle()
用于切换所有匹配的元素,并带有淡入/淡出的过渡动画效果。
所谓”切换”,即如果元素当前是可见的,则将其隐藏(淡出);如果元素当前是隐藏的,则使其显示(淡入)。
语法:
- .fadeToggle( [ duration ] [, easing ] [, complete ] )
- .fadeToggle( options )
参数说明:
fadeToggle参数说明同fadeIn;
fadeTo()
把所有匹配元素的不透明度以渐进方式调整到指定的不透明度,并在动画完成后可选地触发一个回调函数。
这个动画只调整元素的不透明度,也就是说所有匹配的元素的高度和宽度不会发生变化。
语法:
- .fadeTo( [ duration, ] opacity[, easing ] [, complete ] )
参数说明:
参数 | 描述 |
duration | 可选/String/Number类型 三种预定速度之一的字符串(“slow”=”600ms”, “normal”=”400ms”, or “fast”=”200ms”)或表示动画时长的毫秒数值。 |
opacity | Number类型 指定一个0至1之间表示透明度的数字。 |
easing | 可选/String类型 指定使用何种动画效果,默认为”swing”,还可以设为”linear”或其他自定义的动画样式的函数名称。 |
complete | 可选/Function类型 元素显示完毕后需要执行的函数。函数内的this指向当前DOM元素。 |
代码:
//用200毫秒快速将段落的透明度调整到0.25,大约1/4的可见度,之后弹出一个对话框
$("p").fadeTo("fast", 0.25, function(){
alert("Animation Done.");
});