首页 >> js开发 >> js详解微信小程序动画Animation执行过程js大全
js详解微信小程序动画Animation执行过程js大全
发布时间: 2021年1月13日 | 浏览:
| 分类:js开发
前言前言前言因官方文档描述不清晰,本文主要介绍微信小程序动画 实现过程 / 实现方式。实现过程实现方式实现过程实现过程实现过程
推荐你对照 官方文档 来看本文章,这样更有利于理解。
推荐你对照 官方文档 来看本文章,这样更有利于理解。简单来说,整个动画实现过程就三步:
创建一个动画实例 animation。
调用实例的方法来描述动画。
最后通过动画实例的 export 方法导出动画数据传递给组件的 animation 属性。
创建一个动画实例 animation。animation调用实例的方法来描述动画。最后通过动画实例的 export 方法导出动画数据传递给组件的 animation 属性。exportanimation前两步是定义一个动画并设置都要干什么,然后把这个设置好的 “规则” 扔给界面上的某个元素,让它按照这个规则执行。
当然如果有多个元素的 animation="{{ani}}",也都会执行这个动画规则。
当然如果有多个元素的 animation="{{ani}}",也都会执行这个动画规则。animation="{{ani}}"实现过程实现过程实现过程上面是理论,接下来进入实操环节,我们通过一个例子来验证。index.wxmlindex.wxml
index.jsindex.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()
})
}
})
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.cssindex.css
.content {/*为了能看清效果*/
width: 200rpx;
height: 200rpx;
border: 3px solid red;
}
.content {/*为了能看清效果*/
width: 200rpx;
height: 200rpx;
border: 3px solid red;
}总结总结总结
推荐你对照 官方文档 来看本文章,这样更有利于理解。
推荐你对照 官方文档 来看本文章,这样更有利于理解。简单来说,整个动画实现过程就三步:
创建一个动画实例 animation。
调用实例的方法来描述动画。
最后通过动画实例的 export 方法导出动画数据传递给组件的 animation 属性。
创建一个动画实例 animation。animation调用实例的方法来描述动画。最后通过动画实例的 export 方法导出动画数据传递给组件的 animation 属性。exportanimation前两步是定义一个动画并设置都要干什么,然后把这个设置好的 “规则” 扔给界面上的某个元素,让它按照这个规则执行。
当然如果有多个元素的 animation="{{ani}}",也都会执行这个动画规则。
当然如果有多个元素的 animation="{{ani}}",也都会执行这个动画规则。animation="{{ani}}"实现过程实现过程实现过程上面是理论,接下来进入实操环节,我们通过一个例子来验证。index.wxmlindex.wxml
index.jsindex.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()
})
}
})
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.cssindex.css
.content {/*为了能看清效果*/
width: 200rpx;
height: 200rpx;
border: 3px solid red;
}
.content {/*为了能看清效果*/
width: 200rpx;
height: 200rpx;
border: 3px solid red;
}总结总结总结