1、关于anime.js的引入
$ npm install animejs
# OR
$ bower install animejs
import anime from 'animejs'
或者直接引用anime.js文件
<!-- 本地下载引入js文件 -->
<script src="anime.min.js"></script>
<!-- CDN在线引入 -->
<script type="text/javascript" src="https://cdn.bootcss.com/animejs/2.2.0/anime.min.js" ></script>
2、简单DEMO
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>简单DEMO</title>
<style>
.demo{
width: 200px;
height: 200px;
}
</style>
</head>
<body>
<div class="demo">DEMO</div>
<script type="text/javascript" src="https://cdn.bootcss.com/animejs/2.2.0/anime.min.js" ></script>
<script>
const animationDemo = anime({
targets: '.demo',
backgroundColor: [
{ value: "#5F9EA0", duration: 700 },
{ value: "#3A5FCD", duration: 300 }
],
fontSize: [
{ value: "32px", duration: 700 },
{ value: "64px", duration: 300 }
],
rotate: 360,
borderRadius: 8,
duration: 1000,
loop: false,
easing: 'easeInOutSine'
})
</script>
</body>
</html>
这是一个简单的demo,实现.demo这个div同时旋转360度,变色与字号变大的动画。当然,这个动画过于粗糙,非常难看,通过这个简单的例子讲一下anime.js的简单用法
首先调用动画的基本是anime()这个方法,在方法内进行配置即可实现一个简单动画
1.targets:实现动画的目标,可以是
- css选择器 如:'div','#el path';
- DOM元素 如: document.querySelector('.item')
- 节点列表 如: document.querySelectorAll('.item')
- 对象
- 数组 如:['div', '.item', domNode]
2.一些CSS属性
使用一些CSS属性值的设置即可实现动画,比如:
// value:属性值;duration:持续时间;delay:延迟时间
backgroundColor: [
{ value: "#5F9EA0", duration: 700 },
{ value: "#3A5FCD", duration: 300, delay: 1000}
],
这个动画就是前0.7s背景色为“#5F9EA0”,1s时才将颜色开始变为“#3A5FCD”,持续0.3s。
很多属性都可以用,可以自己试试
3.rotate:旋转,后面是度数,当然你可以不写,默认为0
4.borderRadius:这个不需要解释了
5.duration:动画执行时间
6.loop:是否循环执行动画,默认是false
7.easing:动画执行函数,这个怎么说呢,就是动画在执行过程中不同阶段的不同执行速度
具体效果参看这个网站
选择右下角的值查看函数,有合适的的值的写法是easeIn、easeOut或者是easeInOut加上你选择的效果的值
3、相关学习文档
随便写了点,简单记录一下,深入了解查看文档
3.官方网站