淡入淡出效果

方法列表

方法

描述

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.");
 });