Documentation de développement de l'applet WeChat
/ 微信小程序API 動畫
微信小程序API 動畫
wx.createAnimation(OBJECT)
創(chuàng)建一個動畫實例animation。調用實例的方法來描述動畫。最后通過動畫實例的export
方法導出動畫數(shù)據(jù)傳遞給組件的animation
屬性。
注意: export
方法每次調用后會清掉之前的動畫操作
OBJECT參數(shù)說明:
var animation = wx.createAnimation({ transformOrigin:"50% 50%", duration:1000, timingFunction:"ease", delay:0 })
animation
動畫實例可以調用以下方法來描述動畫,調用結束后會返回自身,支持鏈式調用的寫法。
樣式:
旋轉:
縮放:
偏移:
傾斜:
矩陣變形:
動畫隊列
調用動畫操作方法后要調用 step()
來表示一組動畫完成,可以在一組動畫中調用任意多個動畫方法,一組動畫中的所有動畫會同時開始,一組動畫完成后才會進行下一組動畫。step 可以傳入一個跟 wx.createAnimation()
一樣的配置參數(shù)用于指定當前組動畫的配置。
示例:
<view animation="{{animationData}}"></view>
Page({ data:{ animationData:{} }, onShow:function(){ var animation = wx.createAnimation({ duration:1000, timingFunction:"ease", }) this.animation = animation animation.scale(2,2).rotate(45).step(); this.setData({ animationData:animation.export() }) setTimeout(function(){ animation.translate(30).step(); this.setData({ animationData:animation.export() }) }.bind(this),1000) }, rotateAndScale: function () { // 旋轉同時放大 this.animation.rotate(45).scale(2, 2).step() this.setData({ animationData:animation.export() }) }, rotateThenScale: function () { // 先旋轉后放大 this.animation.rotate(45).step() this.animation.scale(2, 2).step() this.setData({ animationData:animation.export() }) }, rotateAndScaleThenTranslate: function () { // 先旋轉同時放大,然后平移 this.animation.rotate(45).scale(2, 2).step() this.animation.translate(100, 100).step({ duration: 1000 }) this.setData({ animationData:animation.export() }) } })