首页 > 编程知识 正文

动画库,如何下载jquery插件

时间:2023-05-06 02:50:26 阅读:54985 作者:1611

这次介绍前端动画插件anime.JS。 anime.js是一个强大的Javascript动画库插件,可以与CSS3属性、SVG、DOM元素和js对象一起工作,以创建各种高性能、平滑迁移的动画效果。

安装npminstallanimejsbowerinstallanimejs并在页面上部署anime.min.js文件。

script type=' text/JavaScript ' src=' js/anime.min.js '/script html结构#初始化插件传递作为JSON对象所需的参数translateX: '13rem ',rotate: 180,BorderRaaate配置参数[导出外链图像失败。 源站可能有防盗链机构。 建议保存图像并直接上传。 (img-ZUDz6v0K-1608649092166 ) ) https://img kr2. cn-bj.ufile OS.com/73 f6aa 2d-3ab4- ] ucloud public key=token _ n

参数化教程动画的目标对象(targets ) CSS选择器不可使用伪元素

anime ({ targets : }.CSS-selector-demo.El ),translateX: 250} ); DOM元素/元素序列使用DOM节点或节点集合作为动画目标

var elements=document.queryselectorall (.DOM-node-demo.El ); anime({Targets:elements,translateX: 270} ); JAVASCRIPT对象将包含至少一个数字属性的JAVASCRIPT对象作为动画的目标。

varlogel=document.query selector (.battery-log ); varbattery={charged:'0% ',cycles :120 } anime (targets : battery,charged3360'100% ',cycles : 130 eass }; ); 将数组作为动画的目标。

varel=document.query selector (.混合阵列演示. El-01 ); anime(Targets3360(El,'.mixed-array-demo .el-02 ','.mixed-array-demo .el-02 ' ),Translatex3360 ) ) )。 可设置动画的目标属性可将目标的CSS属性设置为动画。大多数CSS属性都会导致布局更改或重新绘制,并会导致动画不稳定。 因此尽可能优先考虑opacity和CSS transforms。

transforms属性相对于CSS的动画。 的所有变换属性

任何在JAVASCRIPT对象属性中包含数字的Object属性都可以设置动画。

DOM属性包含数字的所有DOM属性都可以设置动画。

与其他DOM属性一样,SVG属性可以设置包含至少一个数字的所有SVG属性的动画。

动画的基本参数DURAION持续时间定义动画的持续时间(以毫秒为单位)。

“延迟”定义动画的延迟(以毫秒为单位)。

“结束延迟”在动画末尾添加时间(以毫秒为单位)。

“EASING时间曲线”定义动画的时间曲线。

ROUND (数字格式)将值向上舍入为小数x。

特殊属性使用Object作为值,为动画的每个属性定义特定的参数。

其他未在Object中指定的属性继承自主动画。

功能参数为动画的每个目标和属性设置不同的值。

函数接受三个参数:

ARGUMENTSINFOStarget当前动画目标元素索引动画目标的索引targetsLength总动画目标数anime ((targets : (.function-babar

ction(el, i, l) { return i * 100; }, endDelay: function(el, i, l) { return (l - i) * 100; }}); 方向和循环 DIRECTION(方向)

定义动画的方向。

ACCEPTSINFOSnormal正方向动画reverse反方向动画alternate往返LOOP(循环)

定义动画的往复次数。

ACCEPTSINFOSNumber循环次数true无限循环AUTOPLAY(自动播放)

定义动画是否应自动启动。

ACCEPTSINFOStrue开启自动播放false关闭自动播放动画赋值方式 无单位数值

如果原始值具有单位,则它将自动添加到动画值中。

有单位数值

强制动画使用某个单位并自动转换初始目标值。

相对数值

添加,减去或乘以原始值。

ACCEPTSEFFECTEXAMPLE‘+=’Add‘+=100’‘-=’Substract‘-=2turn’‘*=’Multiply‘*=10’颜色

anime.js 接受并转换Haxadecimal(十六进制),RGB,RGBA,HSL和HSLA颜色值。

设定动画初始值

强制动画以指定值开始。

函数返回数值

为动画的每个目标和属性设置不同的值。

ARGUMENTSINFOStarget当前动画目标元素index动画目标的索引targetsLength总动画目标数关键帧(KEYFRAMES) 动画关键帧

动画关键帧是使用keyframes属性中的数组定义的。

如果关键帧内没有指定duration(持续时间),则每个关键帧的持续时间将等于动画总持续时间除以关键帧数。

anime({ targets: '.animation-keyframes-demo .el', keyframes: [ {translateY: -40}, {translateX: 250}, {translateY: 40}, {translateX: 0}, {translateY: 0} ], duration: 4000, easing: 'easeOutElastic(1, .8)', loop: true}); 属性关键帧

与动画关键帧类似,属性关键帧是使用属性对象的Array定义的。 属性关键帧允许重叠动画,因为每个属性都有自己的关键帧数组。

动画控制 PLAY / PAUSE(暂停/播放)

播放暂停的动画,如果autoplay 参数设置为false,则启动动画。

animation.play();animation.pause(); RESTART(重新开始)

从动画的初始值重新开始动画。

animation.restart(); REVERSE(反转方向)

反转动画的方向。

animation.reverse(); SEEK(瞬移)

跳转到特定时间(以毫秒为单位)。

animation.seek(timeStamp); 时间轴控制
时间轴控制与动画控制的方法一样。 timeline.play();timeline.pause();timeline.restart();timeline.seek(timeStamp); 时间曲线(EASING) 匀速

不对动画应用任何缓动时间曲线。
对于opacity和colors过渡很有用。

easing: 'linear' 不匀速 easing: 'easeInOutSine' 三次贝塞尔

使用您自己的自定义立方Bézier曲线cubicBezier(x1, y1, x2, y2).

easing: 'cubicBezier(.5, .05, .1, .3)' 弹簧(SPRING)

类似于弹簧效果

easing: 'spring(mass, stiffness, damping, velocity)' 弹跳

弹跳效果

easing: 'easeOutElastic(amplitude, period)' 台阶式
定义动画到达其结束值所需的跳转次数。 easing: 'steps(numberOfSteps)' 自定义

通过基于function based value返回自定义时间曲线函数。

easing: function() { return function(time) { return time * i} } ANIME.JS方法 删除目标

从正在运行的动画或时间轴中删除目标。
targets参数接受与targets 属性相同的值。

anime.remove(targets) 获取值

返回元素的原始值。

anime.get(target, propertyName, unit); 设定值

立即将值设置为指定的目标。

anime.set(targets, {property: value}); 随机数

返回特定范围内的随机整数。
anime.random(minValue, maxValue);

TICK

使用外部requestAnimationFrame循环播放动画。
不要忘记将autoplay参数设置为false以防止anime.js内置RAF循环启动。

animation.tick(time) 运行的对象

返回当前正在运行的所有活动anime.js实例的Array。

anime.running

感谢阅读,详细文档请阅读anime.js官网文档

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。