简单总结一下微信动画的实现及执行步骤。
官方文档是这样说的:①创建一个动画实例动画。②调用实例的方法来描述动画。③最后通过动画实例的出口方法导出动画数据传递给组件的动画属性。
因为小程序是数据驱动的,给这句话加上数字标注分为三步:
前两步是定义一个动画并设置都要干什么,然后把这个设置好的“规”则扔给界面上的某个元素,让它按照这个规则执行。
当然如果有多个元素的<代码>动画=" {{ani}} "> 代码也都会执行这个动画规则。
新建一个小程序,把没用的删掉修改一下,做个简单例子,上图
代码如下:
index.wxml,一个helloworld,一个按钮
& lt;视图类=叭萜鳌北? & lt;视图类=皍sermotto”动画=皗{ani}}”比; & lt;文本类=" user-motto "在{{座右铭}}& lt;/text> & lt;/view> & lt;按钮bindtap='开始'在动画& lt;/button> & lt;/view>
索引。wxs,为了看着方便加了个边框
.usermotto { margin-top: 100 px; 边界:固体; }
index.js
页面({ 数据:{ 座右铭:“Hello World”, }, 开始:函数(){ var动画=wx.createAnimation ({ 持续时间:4000 timingFunction:“缓解”, 延迟:1000 }); animation.opacity (0.2)。翻译(100、-100).step () this.setData ({ ani: animation.export () }) } })
简单介绍一下例子中的几个参数和方法(其他的详见官方文档):
,,,,,持续时间:动画持续多少毫秒
,,,,timingFunction:“运动”的方式,例子中的“缓解”代表动画以低速开始,然后加快,在结束前变慢,
,,,,延迟:多久后动画开始运行
,,,,,不透明度(0.2)慢慢变透明
,,,,,翻译(100、-100)向X轴移动100的同时向Y轴移动-100
,,,,,步骤():一组动画完成,例如想让上例中的HelloWorld向右上方移动并变透明后,再次向左移动50可以继续写动画。translateX (-50) .step(),作用就是向右上方移动和变透明是同时进行,这两种变化完成之后才会进行向左运行的一步。
例子:Github
以上所述是小编给大家介绍的微信小程序动画(动画)的实现及执行步骤,希望对大家有所帮助,如果大家有任何疑问欢迎给我留的言,小编会及时回复大家的!