2010-07-22 73 views
5

什么是区别fadeIn vs fadeOut vs fadeTofadeIn vs fadeOut vs fadeTo

+5

该文档应描述这些方法:http://api.jquery.com老实说,你应该总是先阅读文档,然后再问任何问题,你的问题的90%将在那里回答。 – 2010-07-22 17:48:39

+0

@FelixKling - 我同意你的观点,但经常在讨论中发现这样的问题,在jQuery框架中发现隐藏的陷阱。例如:http://stackoverflow.com/questions/6045636/css-and-opacity-following-fadein-not-working – Neil 2012-04-11 15:26:13

回答

11

fadeIn从元件的电流不透明度变淡为1.
fadeOut从元素当前不透明度消退为0.
fadeTo从元素当前不透明度消失为给定的不透明度。

$('#myObject').fadeTo('fast', 0.5, function() { 
    $('#myObject').fadeTo('fast', 0.8); 
}); 

上述衰落myObject从它有任何的不透明度,0.5,它是50%的透明度,并且在这之后,再次消失高达20%的透明度。

+1

fadeIn()fadeOut()也会影响显示属性,这是主要区别之一,fadeto()能够褪去一定程度的不透明度而不显示。 – multimediaxp 2014-10-23 05:40:19

2

淡入..显示元件逐渐

淡出..隐藏的元素逐渐

FadeTo ..一个元素的透明度改变成给定值

0

我在这里只看到语言冗余,因为fadeTo适合所有的用例。

10

短答案:

  • 淡入()淡出()控制display属性,而动画褪色。
  • fadeTo()控制opacity属性,同时动画淡入淡出。

龙答:

淡入()淡出()都被设计用于控制display财产,就像展()和隐藏(),但只有动画淡入之间。淡入的

过程()

  • 制备:设置为opacity:0
  • 处理:设置为display:block
  • 过程:逐渐更改为opacity:1。淡出的

过程()

  • 过程:逐渐改变到opacity:0
  • 过程:设置为display:none

fadeTo()是指设置opacity属性,而在动画之间淡入。 fadeTo的

过程()

  • 制备:设置为display: block
  • 流程:设置为opacity: [$]

查看JsFiddle上的breakdown of formulas, which make up fadeIn() and fadeTo()

更新:淡入()和淡出()的

建立更紧密的亲属,而展()和隐藏()。

显示()隐藏()也意欲控制display属性,就像淡入()和淡出(),但除此之外,动画的宽度和高度之间。

过程显示的()

  • 制备:设置为opacity:0width:0height:0
  • 过程:设置为display:block
  • 过程:逐渐改变到opacity:1width:[auto]height:[auto]

过程兽皮()

  • 过程:逐渐改变到opacity:0width:0height:0
  • 过程:设置为display:none

实施例:

上的jsfiddle比较behavior of fadeIn(), fadeOut(), fadeTo(), show() and hide()

+0

我认为这是最好的答案,因为它清楚地说明了一切。 – 2016-08-23 06:58:22