3-1 jQuery中淡出动画fadeOut
本节编程练习不计算学习进度,请电脑登录imooc.com操作

jQuery中淡出动画fadeOut

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

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

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

.fadeOut( [duration ], [ complete ] )

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

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

任务

  1. <!DOCTYPE html>
  2. <html>
  3.  
  4. <head>
  5. <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
  6. <title></title>
  7. <style>
  8. p{
  9. color:red;
  10. }
  11. </style>
  12. <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
  13. </head>
  14.  
  15. <body>
  16. <h2>fadeOut</h2>
  17. <p>测试文字淡入效果</p>
  18. <p>慕课网,专注分享</p>
  19. 淡出的隐藏效果:
  20. <select id="animation">
  21. <option value="1">fadeOut( )</option>
  22. <option value="2">fadeOut( "slow" )</option>
  23. <option value="3">fadeOut( 3000 )</option>
  24. <option value="4">fadeOut( 1000, complete )</option>
  25. <option value="5">fadeOut( 1000, "linear" )</option>
  26. <option value="6">fadeOut( options )</option>
  27. </select>
  28.  
  29. <br/><br/>
  30.  
  31. <input id="btnFadeOut" type="button" value="点击淡出隐藏" />
  32. <input id="btnShow" type="button" value="显示" />
  33.  
  34. <script type="text/javascript">
  35. //【显示】按钮
  36. $("#btnShow").click(function() {
  37. $("p").show();
  38. });
  39.  
  40. //【隐藏】按钮
  41. $("#btnFadeOut").click(function() {
  42. var v = $("#animation").val();
  43. if (v == "1") {
  44. $("p").fadeOut();
  45. } else if (v == "2") {
  46. $("p").fadeOut("slow");
  47. } else if (v == "3") {
  48. $("p").fadeOut(3000);
  49. } else if (v == "4") {
  50. $("p").fadeOut(2000, function() {
  51. alert("隐藏完毕!");
  52. });
  53. } else if (v == "5") {
  54. $("p").fadeOut(1000, "linear");
  55. } else if (v == "6") {
  56. $("p").fadeOut({
  57. duration: 1000
  58. });
  59. }
  60. });
  61. </script>
  62. </body>
  63.  
  64. </html>
  65.  
下一节