jQuery animate easing使用方法图文详解


Posted in Javascript onJune 17, 2016

从jQuery API 文档中可以知道,jQuery自定义动画的函数.animate( properties [, duration] [, easing] [, complete] )有四个参数:

• properties:一组包含作为动画属性和终值的样式属性和及其值的集合

• duration(可选):动画执行时间,其值可以是三种预定速度之一的字符串("slow", "normal", or "fast")或表示动画时长的毫秒数值(如:1000)

• easing(可选):要使用的过渡效果的名称,如:"linear" 或"swing"

• complete(可选):在动画完成时执行的函数

其中参数easing默认有两个效果:"linear"和"swing",如果需要更多效果就要插件支持了,jQuery Easing Plugin提供了像"easeOutExpo"、"easeOutBounce"等30多种效果,大家可以点击这里去看每一种easing的演示效果,下面详细介绍下其使用方法及每种easing的曲线图。

jQuery easing 使用方法

首先,项目中如果需要使用特殊的动画效果,则需要在引入jQuery之后引入jquery.easing.1.3.js

<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.js"></script>
<script type="text/javascript" src="http://gsgd.co.uk/sandbox/jquery/easing/jquery.easing.1.3.js"></script>

引入之后,easing参数可选的值就有以下32种:

1. linear
2. swing
3. easeInQuad
4. easeOutQuad
5. easeInOutQuad
6. easeInCubic
7. easeOutCubic
8. easeInOutCubic
9. easeInQuart
10. easeOutQuart
11. easeInOutQuart
12. easeInQuint
13. easeOutQuint
14. easeInOutQuint
15. easeInExpo
16. easeOutExpo
17. easeInOutExpo
18. easeInSine
19. easeOutSine
20. easeInOutSine
21. easeInCirc
22. easeOutCirc
23. easeInOutCirc
24. easeInElastic
25. easeOutElastic
26. easeInOutElastic
27. easeInBack
28. easeOutBack
29. easeInOutBack
30. easeInBounce
31. easeOutBounce
32. easeInOutBounce

当 然一般一个项目中不可能会用到这么多效果,为了减少代码冗余,必要时可以不用引入整个jquery.easing.1.3.js,我们可以只把我们需要的 几种easing放入Javascript文件中,如项目中只用到"easeOutExpo"和"easeOutBounce"两种效果,只需要下面的代 码就可以了

jQuery.extend( jQuery.easing, 
{ 
easeOutExpo: function (x, t, b, c, d) { 
return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b; 
}, 
easeOutBounce: function (x, t, b, c, d) { 
if ((t/=d) < (1/2.75)) { 
return c*(7.5625*t*t) + b; 
} else if (t < (2/2.75)) { 
return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b; 
} else if (t < (2.5/2.75)) { 
return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b; 
} else { 
return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b; 
} 
}, 
});

使用jQuery自定义动画函数animate来指定easing效果,如自定义一种类弹簧效果的动画:

$(myElement).animate({ 
top: 500, 
opacity: 1 
}, 1000, 'easeOutBounce');

值得一提的是jQuery 1.4版本中对animate()方法,easing的方法进行了扩展,支持为每个属性指定easing方法,详细请参考这里,如:

//第一种写法
$(myElement).animate({ 
left: [500, 'swing'], 
top: [200, 'easeOutBounce'] 
}); 
//第二种写法
$(myElement).animate({ 
left: 500, 
top: 200 
}, { 
specialEasing: { 
left: 'swing', 
top: 'easeOutBounce' 
} 
});

使用jQuery内置动画函数如slideUp()、slideDown()等来指定easing效果,以下两种方法都可以:

$(myElement).slideUp(1000, method, callback}); 
$(myElement).slideUp({ 
duration: 1000, 
easing: method, 
complete: callback 
});

jQuery easing 图解

以下图解可以让你更容易理解每一种easing的效果

jQuery animate easing使用方法图文详解

以上所述是小编给大家介绍的jQuery animate easing使用方法详解的相关知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
splice slice区别
Oct 09 Javascript
详细讲解JS节点知识
Jan 31 Javascript
JS定义回车事件(实现代码)
Jul 08 Javascript
删除select中所有option选项jquery代码
Aug 12 Javascript
JQuery中操作Css样式的方法
Feb 12 Javascript
基于jQuery ligerUI实现分页样式
Sep 18 Javascript
使用Ajax与服务器(JSON)通信实例
Nov 04 Javascript
js实现楼层导航功能
Feb 23 Javascript
AngularJS实现的简单拖拽功能示例
Jan 02 Javascript
微信小程序返回上一页传参并刷新过程解析
Dec 13 Javascript
使用Vue-cli 中为单独页面设置背景图片铺满全屏
Jul 17 Javascript
VUE中鼠标滚轮使div左右滚动的方法详解
Dec 14 Vue.js
JS常用字符串方法(推荐)
Jan 15 #Javascript
url中的特殊符号有什么含义(推荐)
Jun 17 #Javascript
JS模拟的Map类实现方法
Jun 17 #Javascript
jQuery实现iframe父窗体和子窗体的相互调用
Jun 17 #Javascript
JS工作中的小贴士之”闭包“与事件委托的”阻止冒泡“
Jun 16 #Javascript
JS阻止事件冒泡行为和闭包的方法
Jun 16 #Javascript
jquery实现简单Tab切换菜单效果
Jul 17 #Javascript
You might like
PHP实现文件上传操作和封装
2020/03/04 PHP
jQuery 打造动态渐变按钮 详细图文教程
2010/04/25 Javascript
jquery 循环显示div的示例代码
2013/10/18 Javascript
ANGULARJS中用NG-BIND指令实现单向绑定的例子
2014/12/08 Javascript
javascript实现点击后变换按钮显示文字的方法
2015/05/13 Javascript
jquery Deferred 快速解决异步回调的问题
2016/04/05 Javascript
Bootstrap每天必学之弹出框(Popover)插件
2016/04/25 Javascript
Angular JS数据的双向绑定详解及实例
2016/12/31 Javascript
基于JavaScript实现评论框展开和隐藏功能
2017/08/25 Javascript
javascript数组拍平方法总结
2018/01/20 Javascript
详解Angular6学习笔记之主从组件
2018/09/05 Javascript
Openlayers实现测量功能
2020/09/25 Javascript
python去除所有html标签的方法
2015/05/05 Python
python3.0 模拟用户登录,三次错误锁定的实例
2017/11/02 Python
在Mac下使用python实现简单的目录树展示方法
2018/11/01 Python
Python 按字典dict的键排序,并取出相应的键值放于list中的实例
2019/02/12 Python
pycharm显示远程图片的实现
2019/11/04 Python
Python 读取xml数据,cv2裁剪图片实例
2020/03/10 Python
Python3.9.0 a1安装pygame出错解决全过程(小结)
2021/02/02 Python
CSS3 calc()会计算属性详解
2018/02/27 HTML / CSS
CSS3中设置3D变形的transform-style属性详解
2016/05/23 HTML / CSS
用canvas显示验证码的实现
2020/04/10 HTML / CSS
委托证明的格式
2014/01/10 职场文书
葬礼司仪主持词
2014/03/31 职场文书
企业晚会策划方案
2014/05/29 职场文书
保护环境标语
2014/06/09 职场文书
写字楼租赁意向书
2014/07/30 职场文书
2014年重阳节老干部座谈会局领导发言稿
2014/09/25 职场文书
招商引资工作汇报
2014/10/28 职场文书
经理助理岗位职责
2015/02/02 职场文书
汽车质检员岗位职责
2015/04/08 职场文书
妈妈别哭观后感
2015/06/08 职场文书
Html5页面播放M4a音频文件
2021/03/30 HTML / CSS
vue前端工程的搭建
2021/03/31 Vue.js
MySQL获取所有分类的前N条记录
2021/05/07 MySQL
win10键盘驱动怎么修复?Win10键盘驱动修复小技巧
2022/04/06 数码科技