资讯专栏INFORMATION COLUMN

推荐三两款前端动画库,anitmate.css, velocity-animate, anime,

xzavier / 1809人阅读

摘要:所以就说说吧优点可自定义动画效果,支持队列动效支持回调函数支持动画的,等等功能缺点缺少自定义特效文档比较少使用遇到的小问题默认不是匀速的,需要设置详细整理待续

在最近一段时间的工作里,常常用到动画,我主要接触了三个

animate.css
anime
velocity

下面分析一下他们的优缺点

animate.css

优点:
animate.css主要是使用css实现动画效果,目前已经有几十种预定义的动画,使用起来非常简便,基本上都能找到我们想要的动画效果,通过给dom结构添加相应的类.animated .动效类这个dom就拥有了动效。是不是非常的简单。
API(假装是正确的翻译)

fade: {
        title: "淡入淡出",
        fadeIn: "淡入",
        fadeInDown: "向下淡入",
        fadeInDownBig: "向下快速淡入",
        fadeInLeft: "向右淡入",
        fadeInLeftBig: "向右快速淡入",
        fadeInRight: "向左淡入",
        fadeInRightBig: "向左快速淡入",
        fadeInUp: "向上淡入",
        fadeInUpBig: "向上快速淡入",
        fadeOut: "淡出",
        fadeOutDown: "向下淡出",
        fadeOutDownBig: "向下快速淡出",
        fadeOutLeft: "向左淡出",
        fadeOutLeftBig: "向左快速淡出",
        adeOutRight: "向右淡出",
        fadeOutRightBig: "向右快速淡出",
        fadeOutUp: "向上淡出",
        fadeOutUpBig: "向上快速淡出"
      },
      bounce: {
        title: "弹跳类",
        bounceIn: "弹跳进入",
        bounceInDown: "向下弹跳进入",
        bounceInLeft: "向右弹跳进入",
        bounceInRight: "向左弹跳进入",
        bounceInUp: "向上弹跳进入",
        bounceOut: "弹跳退出",
        bounceOutDown: "向下弹跳退出",
        bounceOutLeft: "向左弹跳退出",
        bounceOutRight: "向右弹跳退出",
        bounceOutUp: "向上弹跳退出"
      },
      zoom: {
        title: "缩放类",
        zoomIn: "放大进入",
        zoomInDown: "向下放大进入",
        zoomInLeft: "向右放大进入",
        zoomInRight: "向左放大进入",
        zoomInUp: "向上放大进入",
        zoomOut: "缩小退出",
        zoomOutDown: "向下缩小退出",
        zoomOutLeft: "向左缩小退出",
        zoomOutRight: "向右缩小退出",
        zoomOutUp: "向上缩小退出"
      },
      rotate: {
        title: "旋转类",
        rotateIn: "顺时针旋转进入",
        rotateInDownLeft: "从左往下旋入",
        rotateInDownRight: "从右往下旋入",
        rotateInUpLeft: "从左往上旋入",
        rotateInUpRight: "从右往上旋入",
        rotateOut: "顺时针旋转退出",
        rotateOutDownLeft: "向左下旋出",
        rotateOutDownRight: "向右下旋出",
        rotateOutUpLeft: "向左上旋出",
        rotateOutUpRight: "向右上旋出"
      },
      flip: {
        title: "翻转类",
        flipInX: "水平翻转进入",
        flipInY: "垂直翻转进入",
        flipOutX: "水平翻转退出",
        flipOutY: "垂直翻转退出"
      },
      strong: {
        title: "强调类",
        bounce: "弹跳",
        flash: "闪烁",
        pulse: "脉冲",
        rubberBand: "橡皮筋",
        shake: "左右弱晃动",
        swing: "上下摆动",
        tada: "缩放摆动",
        wobble: "左右强晃动",
        jello: "拉伸抖动"
      }

使用栗子

$("#yourElement").addClass("animated bounceOutLeft");

缺点:

1、animated.css 官方提供了几十种动效,但是总会遇到一些动效可能需要修改,或者有些动效他名没有提供。这个时候,animate.css就显得有点吃力了,因为目前没提供自定义的动画api

2、假如我们dom结构已经有 tranform或者其他相关的css设置,这个时候通过添加animted的动画类,那么我们原来的css效果会 被覆 盖。解决方案只能是在dom的外围再用一个div.wrap包含着 然后把动画效果加载.wrap中来避免覆盖原有效果,相关讨论issue

velocity

优点:

1、Velocity 是一个简单易用、高性能、功能丰富的轻量级JS动画库。它能和 jQuery 完美协作,并和$.animate()有相同的 API, 但它不依赖 jQuery,可多带带使用。 Velocity 不仅包含了 $.animate() 的全部功能, 还拥有:颜色动画、转换动画(transforms)、循环、 缓动、SVG 动画、和 滚动动画 等特色功能
支持原生js,jq,react写法,作为vue粉,失望的是,他暂时没有vue相关的插件
2.也有几十种类似animate.css的预定义动画api
3.支持自定义动效,拼装队列动效等等
4.动画回调 比如 Begin & Complete & Progress 回调函数
中文文档请点击
缺点:
1.其实我觉得对我而言,满足我各种需求,没啥缺点,要一定得揪点的话,我能说api demo 不够多,需要自己多尝试各种组装。
2.目前很多童鞋比较少去用jquery的情况下,Velocity就丧失了很多有点,比如他自定义的动画就是结合Velocity-ui + jq

anime

anime.js(/ˈæn.ə.meɪ/)是一个轻量、灵活的JavaScript 动画库.他可以配合css,svg,Dom节点和js对象工作。
其实用了velocity的人大可不必再去用anime 因为anime拥有的,并且velocity兼容性要比anime
但是恰巧我用了。。。所以就说说吧
优点:
1.可自定义动画效果,支持队列动效
2.支持begin, run, update, complete回调函数
3.支持动画的play(),pause(),restart()等等功能
缺点:
1.缺少自定义特效
2.文档demo比较少

使用遇到的小问题:
1.默认不是匀速的,需要设置 easing: "liner"

(详细整理待续)

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/82769.html

相关文章

  • 可能是最全的前端效库汇总

    摘要:非常的庞大,而且它是完全为设计而生的动效库。它运行于纯粹的之上,是目前最强健的动画资源库之一。可能是创建滚动特效最好用的工具,它支持大量的浏览器,只要它们支持和特性。可以通过安装吊炸天了,接近现实生活中的物理运动碰撞惯性动画库。 收集日期为2019-02-28,★代表当时的该项目在github的star数量 Animate.css 56401 ★ 一个跨浏览器的动效基础库,是许多基础动...

    afishhhhh 评论0 收藏0
  • [译]2018年值得关注的10大JavaScript画库

    摘要:幸运的是,供应似乎与需求相匹配,并且有多种选择。让我们来看看年值得关注的十大动画库。八年了,仍然是一个强大的动画工具。接下来在这个令人惊叹的动画库列表上的就是了。,通常被称为动画平台,我们忽略它在列表中的排名,它是列表中最受欢迎的库之一。 原文链接原译文链接 现代网站的客户端依靠高质量的动画,这就使得JavaScript动画库的需求不断增加。幸运的是,供应似乎与需求相匹配,并且有多种选...

    Me_Kun 评论0 收藏0
  • 前端常用插件、工具类库汇总

    摘要:页面调试腾讯开发维护的代码调试发布,错误监控上报,用户问题定位。同样是由腾讯开发维护的代码调试工具,是针对移动端的调试工具。前端业务代码工具库。动画库动画库,也是目前通用的动画库。 本人微信公众号:前端修炼之路,欢迎关注 本篇文章整理自己使用过的和看到过的一些插件和工具,方便日后自己查找和使用。 另外,感谢白小明,文中很多的工具来源于此。 弹出框 layer:http://layer....

    GitCafe 评论0 收藏0
  • JS画之缓函数分析及画库

    摘要:上一篇讲了动画定时器相关知识,这一篇介绍下缓动函数及流行的动画库。动画库动画库做的事基本就是一下四点,定时器,各种属性变量处理的封装,过程控制,缓动函数。 上一篇讲了JS动画定时器相关知识,这一篇介绍下缓动函数及流行的动画库。 熟悉的图 showImg(https://segmentfault.com/img/bV6ACd?w=751&h=533); 实际使用 jquery anima...

    RancherLabs 评论0 收藏0
  • JS画之缓函数分析及画库

    摘要:上一篇讲了动画定时器相关知识,这一篇介绍下缓动函数及流行的动画库。动画库动画库做的事基本就是一下四点,定时器,各种属性变量处理的封装,过程控制,缓动函数。 上一篇讲了JS动画定时器相关知识,这一篇介绍下缓动函数及流行的动画库。 熟悉的图 showImg(https://segmentfault.com/img/bV6ACd?w=751&h=533); 实际使用 jquery anima...

    ybak 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<