[jQuery教程]淡入淡出方法(十七)

目录
文章目录隐藏
  1. jQuery 中淡出动画 fadeOut
  2. jQuery 中淡入动画 fadeIn
  3. jQuery 中淡入淡出切换 fadeToggle
  4. jQuery 中淡入效果 fadeTo

[jQuery 教程]淡入淡出方法(十七)

本章进一步介绍,如何实现更丰富的动态效果,如淡入、淡出及淡入/淡出切换的动态效果。

jQuery 中淡出动画 fadeOut

让元素在页面不可见,常用的办法就是通过设置样式的 display:none。除此之外还可以一些类似的办法可以达到这个目的。这里要提一个透明度的方法,设置元素透明度为 0,可以让元素不可见,透明度的参数是 0~1 之间的值,通过改变这个值可以让元素有一个透明度的效果。常见的淡入淡出动画正是这样的原理。

fadeOut()函数用于隐藏所有匹配的元素,并带有淡出的过渡动画效果

所谓”淡出”隐藏的,元素是隐藏状态不对作任何改变,元素是可见的,则将其隐藏。

.fadeOut( [duration ], [ complete ] )

通过不透明度的变化来实现所有匹配元素的淡出效果,并在动画完成后可选地触发一个回调函数。这个动画只调整元素的不透明度,也就是说所有匹配的元素的高度和宽度不会发生变化。

字符串 ‘fast’ 和 ‘slow’ 分别代表 200 和 600 毫秒的延时。如果提供任何其他字符串,或者这个 duration 参数被省略,那么默认使用 400 毫秒的延时。

jQuery 中淡入动画 fadeIn

fadeOut 是淡出效果,相反的还有淡入效果 fadeIn,方法使用上两者都是一致的,只是结果相反.

.fadeIn( [duration ], [ complete ] )

参数描述:

  • duration:指定过渡动画运行多长时间(毫秒数),默认值为 400。该参数也可以为字符串”fast”(=200)或”slow”(=600)。
  • 元素显示完毕后需要执行的函数。函数内的 this 指向当前 DOM 元素。

fadeIn()函数用于显示所有匹配的元素,并带有淡入的过渡动画效果。

注意:

  • 淡入的动画原理:操作元素的不透明度从 0%逐渐增加到 100%
  • 如果元素本身是可见的,不对其作任何改变。如果元素是隐藏的,则使其可见

jQuery 中淡入淡出切换 fadeToggle

fadeToggle()函数用于切换所有匹配的元素,并带有淡入/淡出的过渡动画效果。之前也学过 toggle、slideToggle 也是类似的处理方式。

fadeToggle 切换 fadeOut 与 fadeIn 效果,所谓"切换",即如果元素当前是可见的,则将其隐藏(淡出);如果元素当前是隐藏的,则使其显示(淡入)。

常用语法:.fadeToggle( [duration ] ,[ complete ] )

可选的 duration 参数规定效果的时长。它可以取以下值:”slow”、”fast” 或毫秒。 可选的 callback 参数是 fadeToggle 完成后所执行的函数名称。

fadeToggle() 方法可以在 fadeIn() 与 fadeOut() 方法之间进行切换。如果元素已淡出,则 fadeToggle() 会向元素添加淡入效果。如果元素已淡入,则 fadeToggle() 会向元素添加淡出效果。

jQuery 中淡入效果 fadeTo

淡入淡出 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 参数是该函数完成后所执行的函数名称。

「点点赞赏,手留余香」

2

给作者打赏,鼓励TA抓紧创作!

微信微信 支付宝支付宝

还没有人赞赏,快来当第一个赞赏的人吧!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
码云笔记 » [jQuery教程]淡入淡出方法(十七)

发表回复