详解微信小程序动画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 相关文章推荐
Firefox outerHTML实现代码
Jun 04 Javascript
jquery入门—数据删除与隔行变色以及图片预览
Jan 07 Javascript
jquery选择器、属性设置用法经验总结
Sep 08 Javascript
Javascript Memoizer浅析
Oct 16 Javascript
微信小程序前端源码逻辑和工作流
Sep 25 Javascript
js数组去重的hash方法
Dec 22 Javascript
微信小程序使用checkbox显示多项选择框功能【附源码下载】
Dec 11 Javascript
Angular4编程之表单响应功能示例
Dec 13 Javascript
vue-cli webpack模板项目搭建及打包时路径问题的解决方法
Feb 26 Javascript
vuejs实现ready函数加载完之后执行某个函数的方法
Aug 31 Javascript
基于vue2.0实现仿百度前端分页效果附实现代码
Oct 30 Javascript
详解vue项目中实现图片裁剪功能
Jun 07 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作的文本留言本的例子(六)
2006/10/09 PHP
php adodb连接mssql解决乱码问题
2009/06/12 PHP
PHP 函数语法介绍一
2009/06/14 PHP
万能的php分页类
2017/07/06 PHP
PHP示例演示发送邮件给某个邮箱
2019/04/03 PHP
javascript实现原生ajax的几种方法介绍
2013/09/21 Javascript
使用js声明数组,对象在jsp页面中(获得ajax得到json数据)
2013/11/05 Javascript
不提示直接关闭网页窗口的JS示例代码
2013/12/17 Javascript
JQuery结合CSS操作打印样式的方法
2013/12/24 Javascript
jquery ajax传递中文参数乱码问题及解决方法说明
2014/02/07 Javascript
Bootstrap基本组件学习笔记之input输入框组(9)
2016/12/07 Javascript
微信小程序 解决请求服务器手机预览请求不到数据的方法
2017/01/04 Javascript
Vue 过渡(动画)transition组件案例详解
2017/01/22 Javascript
聊聊JavaScript如何实现继承及特点
2017/04/07 Javascript
Angular实现图片裁剪工具ngImgCrop实践
2017/08/17 Javascript
在vue中使用css modules替代scroped的方法
2018/03/10 Javascript
javascript显示动态时间的方法汇总
2018/07/06 Javascript
angularJS1 url中携带参数的获取方法
2018/10/09 Javascript
Javascript幻灯片播放功能实现过程解析
2020/05/07 Javascript
[03:14]DOTA2斧王 英雄基础教程
2013/11/26 DOTA
python使用正则表达式分析网页中的图片并进行替换的方法
2015/03/26 Python
Python实现设置windows桌面壁纸代码分享
2015/03/28 Python
解析Python中的二进制位运算符
2015/05/13 Python
Python数据结构之翻转链表
2017/02/25 Python
PyQt5实现拖放功能
2018/04/25 Python
对Python中9种生成新对象的方法总结
2018/05/23 Python
Python学习笔记之错误和异常及访问错误消息详解
2019/08/08 Python
python装饰器的特性原理详解
2019/12/25 Python
python 实现读取csv数据,分类求和 再写进 csv
2020/05/18 Python
台湾网购生鲜第一品牌:i3Fresh爱上新鲜
2017/10/26 全球购物
Lookfantastic澳大利亚官网:英国知名美妆购物网站
2021/01/07 全球购物
物业管理专业个人的自我评价
2013/11/19 职场文书
预备党员2014全国两会学习心得体会
2014/03/10 职场文书
十佳家长事迹材料
2014/08/26 职场文书
幽默导游词开场白
2015/05/29 职场文书
MybatisPlus代码生成器的使用方法详解
2021/06/13 Java/Android