簡單總結一下微信動畫的實現(xiàn)及執(zhí)行步驟。
創(chuàng)新互聯(lián)專注骨干網(wǎng)絡服務器租用十年,服務更有保障!服務器租用,珉田數(shù)據(jù)中心 成都服務器租用,成都服務器托管,骨干網(wǎng)絡帶寬,享受低延遲,高速訪問。靈活、實現(xiàn)低成本的共享或公網(wǎng)數(shù)據(jù)中心高速帶寬的專屬高性能服務器。
一、實現(xiàn)方式
官方文檔是這樣說的:①創(chuàng)建一個動畫實例 animation。②調(diào)用實例的方法來描述動畫。③最后通過動畫實例的 export 方法導出動畫數(shù)據(jù)傳遞給組件的 animation 屬性。
因為小程序是數(shù)據(jù)驅動的,給這句話加上數(shù)字標注分為三步:
前兩步是定義一個動畫并設置都要干什么,然后把這個設置好的“規(guī)則”扔給界面上的某個元素,讓它按照這個規(guī)則執(zhí)行。
當然如果有多個元素的animation="{{ani}}",
也都會執(zhí)行這個動畫規(guī)則。
二、用例子說話
新建一個小程序,把沒用的刪掉修改一下,做個簡單例子,上圖
代碼如下:
index.wxml,一個helloworld,一個按鈕
<view class="container"> <view class="usermotto" animation="{{ani}}"> <text class="user-motto">{{motto}}</text> </view> <button bindtap='start'>動畫</button> </view>
index.wxss, 為了看著方便加了個邊框
.usermotto { margin-top: 100px; border: solid; }
index.js
Page({ data: { motto: 'Hello World', }, start:function(){ var animation = wx.createAnimation({ duration: 4000, timingFunction: 'ease', delay: 1000 }); animation.opacity(0.2).translate(100, -100).step() this.setData({ ani: animation.export() }) } })
三、相關參數(shù)及方法
簡單介紹一下例子中的幾個參數(shù)和方法(其他的詳見官方文檔):
duration: 動畫持續(xù)多少毫秒
timingFunction: “運動”的方式,例子中的 'ease'代表動畫以低速開始,然后加快,在結束前變慢
delay: 多久后動畫開始運行
opacity(0.2) 慢慢變透明
translate(100, -100) 向X軸移動100的同時向Y軸移動-100
step(): 一組動畫完成,例如想讓上例中的HelloWorld向右上方移動并變透明后,再次向左移動50可以繼續(xù)寫 animation.translateX( -50).step() , 作用就是向右上方移動和變透明是同時進行, 這兩種變化完成之后才會進行向左運行的一步。
例子:Github
總結
以上所述是小編給大家介紹的微信小程序動畫(Animation)的實現(xiàn)及執(zhí)行步驟,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!
文章標題:微信小程序動畫(Animation)的實現(xiàn)及執(zhí)行步驟
轉載源于:http://aaarwkj.com/article4/pcogie.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設、域名注冊、軟件開發(fā)、響應式網(wǎng)站、云服務器、用戶體驗
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)