让元素在页面不可见,经常使用的办法就是经过设置样式的display:none。除此以外还能够一些相似的办法能够达到这个目的。这里要提一个透明度的方法,设置元素透明度为0,可让元素不可见,透明度的参数是0~1之间的值,经过改变这个值可让元素有一个透明度的效果。常见的淡入淡出动画正是这样的原理。ide
fadeOut()函数用于隐藏全部匹配的元素,并带有淡出的过渡动画效果函数
所谓"淡出"隐藏的,元素是隐藏状态不对做任何改变,元素是可见的,则将其隐藏。动画
.fadeOut( [duration ], [ complete ] )
经过不透明度的变化来实现全部匹配元素的淡出效果,并在动画完成后可选地触发一个回调函数。这个动画只调整元素的不透明度,也就是说全部匹配的元素的高度和宽度不会发生变化。this
字符串 'fast' 和 'slow' 分别表明200和600毫秒的延时。若是提供任何其余字符串,或者这个duration参数被省略,那么默认使用400毫秒的延时spa
fadeOut是淡出效果,相反的还有淡入效果fadeIn,方法使用上二者都是一致的,只是结果相反code
.fadeIn( [duration ], [ complete ] )
fadeIn()函数用于显示全部匹配的元素,并带有淡入的过渡动画效果。ci
注意:字符串
fadeToggle()函数用于切换全部匹配的元素,并带有淡入/淡出的过渡动画效果。以前也学过toggle、slideToggle 也是相似的处理方式回调函数
fadeToggle切换fadeOut与fadeIn效果,所谓"切换",即若是元素当前是可见的,则将其隐藏(淡出);若是元素当前是隐藏的,则使其显示(淡入)。
经常使用语法:.fadeToggle( [duration ] ,[ complete ] )it
可选的 duration 参数规定效果的时长。它能够取如下值:"slow"、"fast" 或毫秒。 可选的 callback 参数是 fadeToggle完成后所执行的函数名称。
fadeToggle() 方法能够在 fadeIn() 与 fadeOut() 方法之间进行切换。若是元素已淡出,则 fadeToggle() 会向元素添加淡入效果。若是元素已淡入,则 fadeToggle() 会向元素添加淡出效果。
淡入淡出fadeIn与fadeOut都是修改元素样式的opacity属性,可是他们都有个共同的特色,变化的区间要么是0,要么是1
fadeIn:淡入效果,内容显示,opacity是0到1 fadeOut:淡出效果,内容隐藏,opacity是1到0
若是要让元素保持动画效果,执行opacity = 0.5的效果时,要如何处理?
若是不考虑CSS3,咱们用JS实现的话,基本就是经过定时器,在设定的时间内一点点的修改opacity的值,最终为0.5,原理虽然说简单,可是总不如一键设置这么舒服,jQuery提供了fadeTo方法,可让改变透明度一步到位
语法
.fadeTo( duration, opacity ,callback)
必需的 duration参数规定效果的时长。它能够取如下值:"slow"、"fast" 或毫秒。fadeTo() 方法中必需的 opacity 参数将淡入淡出效果设置为给定的不透明度(值介于 0 与 1 之间)。可选的 callback 参数是该函数完成后所执行的函数名称。