详解微信小程序动画Animation执行过程


Posted in Javascript onSeptember 23, 2020

前言

因官方文档描述不清晰,本文主要介绍微信小程序动画 实现过程 / 实现方式

实现过程

推荐你对照 官方文档 来看本文章,这样更有利于理解。

简单来说,整个动画实现过程就三步:

  • 创建一个动画实例 animation
  • 调用实例的方法来描述动画。
  • 最后通过动画实例的 export 方法导出动画数据传递给组件的 animation 属性。

详解微信小程序动画Animation执行过程

前两步是定义一个动画并设置都要干什么,然后把这个设置好的 “规则” 扔给界面上的某个元素,让它按照这个规则执行。

当然如果有多个元素的 animation="{{ani}}",也都会执行这个动画规则。

实现过程

上面是理论,接下来进入实操环节,我们通过一个例子来验证。

详解微信小程序动画Animation执行过程

index.wxml

<!-- 动画容器(执行动画) -->
<view animation="{{ ani }}" class="content"></view>
<!-- END -->

<!-- 触发按钮 -->
<button bindtap="go">动起来</button>
<!-- END -->

index.js

Page({

 /*
 * 事件处理
 */
 data: {},

 /*
 * 事件处理
 */
 go: function() {
 
 // 1.创建动画实例(animation)
 var animation = wx.createAnimation({
  duration: 1500,//动画持续时间
  timingFunction: 'ease-in',//动画以低速开始
  //具体配置项请查看文档
 })

 // 2.通过实例描述对象()
 /*
 * 链式(类似JQuery)
 * 用 . 拼接动画
 * 最后step()结尾表动画结束
 */
 animation.translate(100, 100).rotate(180).rotate(360).step()

 // 3.导出动画
 this.setData({
  ani: animation.export()
 })
 }
})

index.css

.content {/*为了能看清效果*/
 width: 200rpx;
 height: 200rpx;
 border: 3px solid red;
}

总结

到此这篇关于微信小程序动画Animation执行过程 / 实现过程 / 实现方式详解的文章就介绍到这了,更多相关微信小程序动画Animation内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
use jscript Create a SQL Server database
Jun 16 Javascript
jQuery validate 中文API 附validate.js中文api手册
Jul 31 Javascript
深入理解Javascript中this的作用域
Aug 12 Javascript
javascript设计模式--策略模式之输入验证
Nov 27 Javascript
分享10个优化代码的CSS和JavaScript工具
May 11 Javascript
第一次接触神奇的Bootstrap
Oct 14 Javascript
详解AngularJS 路由 resolve用法
Apr 24 Javascript
Node.js 异步异常的处理与domain模块解析
May 10 Javascript
Angular动画实现的2种方式以及添加购物车动画实例代码
Aug 09 Javascript
详解promise.then,process.nextTick, setTimeout 以及 setImmediate的执行顺序
Nov 21 Javascript
JS div匀速移动动画与变速移动动画代码实例
Mar 26 Javascript
Antd-vue Table组件添加Click事件,实现点击某行数据教程
Nov 17 Javascript
原生js实现分页效果
Sep 23 #Javascript
原生js实现购物车
Sep 23 #Javascript
javascript实现简易计算器功能
Sep 23 #Javascript
javascript使用正则表达式实现注册登入校验
Sep 23 #Javascript
javascript实现点击按钮切换轮播图功能
Sep 23 #Javascript
Vue3为什么这么快
Sep 23 #Javascript
Angular短信模板校验代码
Sep 23 #Javascript
You might like
PHP在Web开发领域的优势
2006/10/09 PHP
PHP 反向排序和随机排序代码
2010/06/30 PHP
PHP 简易输出CSV表格文件的方法详解
2013/06/20 PHP
php使用GD库创建图片缩略图的方法
2015/06/10 PHP
Laravel5.1框架注册中间件的三种场景详解
2019/07/09 PHP
php设计模式之中介者模式分析【星际争霸游戏案例】
2020/03/23 PHP
从零开始学习jQuery (二) 万能的选择器
2010/10/01 Javascript
javascript对中文按照拼音排序代码
2014/08/20 Javascript
AngularJS手动表单验证
2016/02/01 Javascript
jquery自适应布局的简单实例
2016/05/28 Javascript
jQuery密码强度验证控件使用详解
2017/01/05 Javascript
jQuery插件zTree实现单独选中根节点中第一个节点示例
2017/03/08 Javascript
Vue监听数组变化源码解析
2017/03/09 Javascript
jQuery ajax实现省市县三级联动
2021/03/07 Javascript
给Easyui-Datebox设置隐藏或者不可用的解决方法
2017/05/26 Javascript
详解小程序input框失焦事件在提交事件前的处理
2019/05/05 Javascript
修改layui的后台模板的左侧导航栏可以伸缩的方法
2019/09/10 Javascript
JS实现简单随机3D骰子
2019/10/24 Javascript
Vue.js 实现地址管理页面思路详解(地址添加、编辑、删除和设置默认地址)
2019/12/11 Javascript
快速解决vue2+vue-cli3项目ie兼容的问题
2020/11/17 Vue.js
vue3.0 自适应不同分辨率电脑的操作
2021/02/06 Vue.js
python中定义结构体的方法
2013/03/04 Python
Python实现Tab自动补全和历史命令管理的方法
2015/03/12 Python
python实现可下载音乐的音乐播放器
2020/02/25 Python
关于jupyter打开之后不能直接跳转到浏览器的解决方式
2020/04/13 Python
Python 程序报错崩溃后如何倒回到崩溃的位置(推荐)
2020/06/23 Python
matplotlib交互式数据光标mpldatacursor的实现
2021/02/03 Python
HTML5 canvas基本绘图之图形变换
2016/06/27 HTML / CSS
html5实现移动端适配完美写法
2017/11/16 HTML / CSS
美国知名的百货清仓店:Neiman Marcus Last Call
2016/08/03 全球购物
Hotels.com中国区:好订网
2016/08/18 全球购物
全神贯注教学反思
2014/02/03 职场文书
《陈涉世家》教学反思
2014/04/12 职场文书
任命书格式
2014/06/05 职场文书
起诉状范本
2015/05/20 职场文书
MySql重置root密码 --skip-grant-tables
2022/04/11 MySQL