经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » jQuery » 查看文章
JQuery动画效果
来源:cnblogs  作者:贵志  时间:2019/4/3 16:24:08  对本文有异议

JQuery动画实现的注意点:

  1、JQuery 定义了 fadeIn() 和 fadeOut() 等简单方法来实现常见的视觉效果,还定义了一个 animate() 方法来实现更复杂的自定义动画

  2、JQuery 动画是异步的,动画方法会在动画完成之前返回

  3、JQuery 动画方法常使用动画时长(用毫秒数值或字符串来表示)作为第一个可选参数,忽略时长参数或指定时长JQuery无法识别时会采用默认值 400ms,字符串 "fast" 表示 200ms、"slow" 表示 600ms。同时,我们可以通过JQuery.fx.speeds["new speed"] = speed 来定义新的时长名字以及其数值

  4、JQuery 动画默认是队列化的,即如果已有一个动画在执行,新的动画需要等当前动画执行完才能执行

  5、stop([bool], [bool]) 方法用来停止当前正在执行的任何动画,第一个可选参数为 true ,则会清除选中元素上的元素队列,并取消任何等待执行的动画,为 false 时则不会取消等待执行的动画;第二个可选参数为 true 时会让指定元素停止到最终值,而 false 则会让元素状态停止在它被触发时的状态

  6、delay(speed, [queueName]) 方法直接添加一个时间延迟到动画队列里,第一个参数是时长,第二个参数是队列名(通常不需要)

 

常用JQuery动画方法:

  1、淡入淡出:fadeIn([speed], [callback])、fadeOut([speed], [callback])、fadeTo(speed, opacity, [callback]),fadeTo() 会将当前 opacity 值变化到目标值,可选参数 speed 表示动画持续时长;可选参数 callback 表示回调函数(即动画执行后调用的函数)

  2、隐藏与显示:show([speed])、hide([speed])、toggle([speed], [bool]),toggle 让元素在 show 和 hide 之间切换

  3、滑动:slideDown([speed], [callback])、slideUp([speed], [callback])、slideToggle([speed], [callback]),slideToggle 在上滑和下滑之间切换

  4、JQuery 的 animate() 方法定义:$("selector").animate({params}, [speed, callback]),其中 selector 表示选择文档的内容(可以是CSS选择器);params 是一个对象且该对象的属性名必须是 CSS 属性名(支持小驼峰,若属性名包含中划线“-”,则需要使用引号括起来),属性的值必须是动画的目标值

 

注:默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!

  动画只支持数值属性,对于颜色、字体或 display 等枚举属性无法实现动画效果,但我们可以传入自定义的 CSS 属性变化函数来支持非数值动画

  fadeOut() 会让元素看不见,但其在文档里的布局仍然保存着,而 hide() 则会让元素从布局中移除

 

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>animate</title>
    // 引入 JQuery 库
  6. <script src="http://libs.baidu.com/jquery/2.1.1/jquery.min.js"></script>
  7. <script>
    // 通过 $(function) 来执行 JQuery 代码
  8. $(function () {
  9. $("#button1").click(function () {
  10. //animate({params},[speed,callback]);
  11. $("#div1").animate({height:'300px', opacity:'0.8'});
  12. $("#div1").animate({width:'300px', opacity:'0.4'});
  13. $("#div1").animate({height:'100px', opacity:'0.8'});
  14. $("#div1").animate({width:'100px', opacity:'1'}, function () {
  15. alert("Hello Animate");
  16. });
  17. });
  18. $("#button2").click(function () {
  19. $("#div1").stop(true, true);
  20. });
  21. $("#button3").click(function () {
  22. $("#div2").animate({left: '200px', fontSize: '2em', textAlign: 'center'});
  23. });
  24. $("#button4").click(function () {
  25. $("#div2").animate({left: '0px', fontSize: '1em', textAlign: 'left'});
  26. });
  27. });
  28. </script>
  29. </head>
  30. <p>
  31. <button id="button1">开始动画</button>&nbsp;<button id="button2">停止动画</button>
  32. <p>默认情况下,所有的 HTML 元素有一个静态的位置,且是不可移动的。如果需要改变为,我们需要将元素的 position 属性设置为 relative, fixed, 或 absolute!</p>
  33. <div id="div1" style="background:#98bf21;height:100px;width:100px;position:fixed;">
  34. </div><br/><br/><br/><br/><br/><br/><br/>
  35. <button id="button3">开始运动</button>&nbsp;<button id="button4">恢复原状态</button><br/><br/>
  36. <div id="div2" style="background-color: #98bf21; height: 100px; width: 100px; position: fixed;">
  37. Hello World
  38. </div>
  39. </body>
  40. </html>

 

原文链接:http://www.cnblogs.com/lemonyam/p/10646289.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号