jQuery Easing 使用方法及其图解

从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
[html] view plaincopy
  1. <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.js"></script>  
  2. <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"两种效果,只需要下面的代码就可以了
[javascript] view plaincopy
  1. jQuery.extend( jQuery.easing,  
  2. {  
  3.     easeOutExpo: function (x, t, b, c, d) {  
  4.         return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;  
  5.     },  
  6.     easeOutBounce: function (x, t, b, c, d) {  
  7.         if ((t/=d) < (1/2.75)) {  
  8.             return c*(7.5625*t*t) + b;  
  9.         } else if (t < (2/2.75)) {  
  10.             return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;  
  11.         } else if (t < (2.5/2.75)) {  
  12.             return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;  
  13.         } else {  
  14.             return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;  
  15.         }  
  16.     },  
  17. });  

 

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

[javascript] view plaincopy
  1. $(myElement).animate({  
  2.     top: 500,  
  3.     opacity: 1  
  4. }, 1000, 'easeOutBounce');  

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

 

[javascript] view plaincopy
  1. $(myElement).animate({  
  2.     left: [500, 'swing'],  
  3.     top: [200, 'easeOutBounce']  
  4. });  

也可以用另外一种写法:

 

 

[javascript] view plaincopy
  1. $(myElement).animate({  
  2.     left: 500,  
  3.     top: 200  
  4. }, {  
  5.     specialEasing: {  
  6.         left: 'swing',  
  7.         top: 'easeOutBounce'  
  8.     }  
  9. });  

 

 

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

 

[javascript] view plaincopy
  1. $(myElement).slideUp(1000, method, callback});  
  2. $(myElement).slideUp({  
  3.     duration: 1000,   
  4.     easing: method,   
  5.     complete: callback  
  6. });  

 

jQuery easing 图解

以下图解可以让你更容易理解每一种easing的效果
1. linear2. swing3. easeInQuad4. easeOutQuad5. easeInOutQuad6. easeInCubic
7. easeOutCubic8. easeInOutCubic9. easeInQuart10. easeOutQuart11. easeInOutQuart12. easeInQuint
13. easeOutQuint14. easeInOutQuint15. easeInExpo16. easeOutExpo17. easeInOutExpo18. easeInSine
19. easeOutSine20. easeInOutSine21. easeInCirc22. easeOutCirc23. easeInOutCirc24. easeInElastic
25. easeOutElastic26. easeInOutElastic27. easeInBack28. easeOutBack29. easeInOutBack30. easeInBounce
    
31. easeOutBounce32. easeInOutBounce 
转:http://blog.csdn.net/xiaolongtotop/article/details/8309635

转载于:https://www.cnblogs.com/cssfirefly/p/4226159.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/257765.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

可以进行单元测试么_前端与单元测试

先来几个专业词汇&#xff0c;这样显得高大上一点&#xff08;不存在的。&#xff09;BDD: Behavior-Driven Development (行为驱动开发)TDD: Test-Driven Development (测试驱动开发)ATDD: Acceptance Test Driven Development(验收测试驱动开发)好&#xff0c;说完了&#xf…

UWP--页面传值

//匿名对象private void Button1_OnClick(object sender, RoutedEventArgs e){this.Frame.Navigate(typeof(PageNavigate2), new { id 1, name "LBI" });}//利用反射获取protected override void OnNavigatedTo(NavigationEventArgs e){var parameter e.Parameter…

Android 4.4 KitKat, the browser and the Chrome WebView

Having V8 as the JavaScript engine for the new web view, the JavaScript performance if much better, besides general performance on CSS thanks to hardware acceleration Android 4.4 KitKat, the browser and the Chrome WebView转载于:https://www.cnblogs.com/dais…

excel 行高 上下留白_拒绝加班,工作中最常用的57个Excel小技巧来了!

今天高顿君分享的 Excel小技巧&#xff0c;全是工作是最常用且简单易操作的&#xff0c;共57个&#xff0c;希望对同学们有所帮助。&#xff08;适合版本 Excel2007及以上&#xff09;一、文件操作1、为excel文件添加打开密码文件 - 信息 - 保护工作簿 - 用密码进行加密。2、为…

经验分享:三步走教你升级企业NAS设备

前几年凡是对于数据存储有需求的企业都已经购买了相关的NAS产品&#xff0c;不过电脑和网络升级换代是比较频繁的&#xff0c;几年过去了中小企业对数据存储的需求也水涨船高&#xff0c;然而面对当初的NAS存储设备该如何处理呢&#xff1f;扔掉可惜使用又不如意的鸡肋问题能够…

C#索引器

索引器允许类或者结构的实例按照与数组相同的方式进行索引取值&#xff0c;索引器与属性类似&#xff0c;不同的是索引器的访问是带参的。 索引器和数组比较&#xff1a; (1)索引器的索引值(Index)类型不受限制 (2)索引器允许重载 (3)索引器不是一个变量 索引器和属性的不同点 …

获取访客进站关键词_拼多多访客突然下降是为什么?拼多多访客突然暴涨又是怎么回事?...

在当下这个互联网时代&#xff0c;可以说流量就代表这金钱。这一点在做电商的商家那里表现的就更为直观了&#xff0c;如果你做了一个拼多多的店铺&#xff0c;之前店铺的流量一直都比较好&#xff0c;而现在拼多多店铺的流量忽然下降了&#xff0c;那么店铺中的销售额就会受到…

微信开发之 二维码生成类库

最近weiphp 二次开真的有点累&#xff0c;漏洞百出。代码维护代价有点高。 <?php /*** Created by PhpStorm.* User: bin* Date: 15-1-16* Time: 上午9:48*/ namespace Home\Common;// 微信处理类 set_time_limit(30); class Weixin{//构造方法static $qrcode_url "h…

通过Matlab实现离散序列卷积和

前言 年轻人&#xff0c;你对数学一无所知&#xff0c;你只是习惯了而已。—冯诺伊曼 Young man, in mathematics you dont understand things. You just get used to them.—John von Neumann。 一、卷积和是什么&#xff1f; 卷积的本质是描述一个瞬时动作&#xff08;激励…

Ansible 五(inventory文件 主机清单)

Ansible 五&#xff08;inventory文件 主机清单&#xff09;Ansible 可同时操作属于一个组的多台主机,组和主机之间的关系通过 inventory 文件配置. 默认的文件路径为 /etc/ansible/hosts除默认文件外,你还可以同时使用多个 inventory 文件(后面会讲到),也可以从动态源,或云上…

python series用法_如何使用Python中的Series字典创建数据框?

数据框是一种二维数据结构&#xff0c;其中数据以表格格式存储&#xff0c;以行和列的形式。它可以可视化为SQL数据表或excel工作表表示形式。可以使用以下构造函数创建它-pd.Dataframe(data, index, columns, dtype, copy)让我们了解如何使用Series字典创建数据框。系列是“熊…

[转载]android设置全屏和无标题

先介绍去掉标题栏的方法&#xff1a; 第一种&#xff1a;也一般入门的时候经常使用的一种方法 requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏注意这句一定要写在setContentView()方法的前面&#xff0c;不然会报错的 第二种&#xff1a;在AndroidManifest.xml文…

mac电脑下Tomcat和Apach配置流程(超详细)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 前言 本章介绍在mac 电脑下如何配置Tomcat、Apach等环境 一、Apache介绍及配置 1.XAMPP安装 为了更好的进行各项软件服务的配置&#xff0c;引入快捷脚本工具——XMAPP。…

MVC 分页

后台代码: using Webdiyer.WebControls.Mvc; 1 public ActionResult Index(int id 1)2 {3 int pageIndex id;4 int count;5 int pageSize 7;6 7 List<News> newsList 8 newsSer.QueryByPage…

cvc 降噪_耳机降噪功能这么多,说说什么是ANC、ENC、CVC、DSP降噪

降噪功能对耳机的作用很重要&#xff0c;一是减少噪音&#xff0c;避免过度放大音量&#xff0c;从而减少对耳朵的损害。二是过滤噪音从而提高音质和通话质量。降噪可分为被动式降噪和主动式降噪。被动式降噪也就是物理降噪&#xff0c;被动式降噪是指利用物理特性将外部噪声与…

RPC 和 RESTful

2019独角兽企业重金招聘Python工程师标准>>> to do ... 转载于:https://my.oschina.net/u/2002769/blog/1505410

[linx] ubuntu网络重启命令

/etc/init.d/networking restart #这种方式必须有/etc/network/interface文件 ifconfig eth0 down #直接重启网卡 ifconfig eth0 up 转载于:https://www.cnblogs.com/fantasy01/p/4229734.html

密码学入门1——凯撒密码和三重DES加解密

实验目的 1、完成第一个入门加解密——凯撒密码 2、完成当下较为流行的三重DES加解密技术 3、熟悉所学的实际运用方向 实验准备 硬件&#xff1a;计算机或笔记本电脑 操作系统&#xff1a;Mac操作系统 IDE环境&#xff1a;Eclipse 程序语言&#xff1a;Java 一、实验基本…

老李谈JVM内存模型

老李谈JVM内存模型 poptest是国内唯一一家培养测试开发工程师的培训机构&#xff0c;以学员能胜任自动化测试&#xff0c;性能测试&#xff0c;测试工具开发等工作为目标。如果对课程感兴趣&#xff0c;请大家咨询qq&#xff1a;908821478&#xff0c;咨询电话010-84505200。 J…

emqx 使用端口_数据传输、存储、展现,EMQ X + TDengine 搭建 MQTT 物联网数据可视化平台...

物联网数据采集涉及到大量设备接入、海量的时序数据传输&#xff0c;EMQ X 消息中间件与 TDengine 大数据平台的组合技术栈完全能够胜任场景中的海量时间序列监测数据的传输、存储和计算。数据入库后&#xff0c;往往需要其他方式如数据可视化系统将数据按照规则统计、展现出来…