這篇文章給大家分享的是有關(guān)如何使用mpvue實(shí)現(xiàn)小程序簽到金幣掉落動(dòng)畫的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。
十余年的溫州網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營(yíng)銷推廣的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整溫州建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“溫州網(wǎng)站設(shè)計(jì)”,“溫州網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。需要變成原生小程序,則需要修改一下代碼的寫法
效果圖:
創(chuàng)建金幣動(dòng)畫組件 clockAnimation.vue
<template> <div class="container" v-if='isShow'> <!-- 創(chuàng)建金幣對(duì)象 --> <!-- 大金幣 --> <div :class="coinShow?'coinShow bgCoin':'bgCoin'" :animation="bgCoinAnimation" ></div> <!-- 7個(gè)小金幣 --> <div :class="coinShow?'coinShow coin coin1':' coin coin1'" :animation="coinAnimation1">1</div> <div :class="coinShow?'coinShow coin coin2':' coin coin2'" :animation="coinAnimation2">2</div> <div :class="coinShow?'coinShow coin coin3':' coin coin3'" :animation="coinAnimation3">3</div> <div :class="coinShow?'coinShow coin coin4':' coin coin4'" :animation="coinAnimation4">4</div> <div :class="coinShow?'coinShow coin coin5':' coin coin5'" :animation="coinAnimation5">5</div> <div :class="coinShow?'coinShow coin coin6':' coin coin6'" :animation="coinAnimation6">6</div> <div :class="coinShow?'coinShow coin coin7':' coin coin7'" :animation="coinAnimation7">7</div> </div> </template> <script> export default{ data() { return { coinShow:false,//金幣對(duì)象是否顯示,用于重置動(dòng)畫時(shí),隱藏對(duì)象 isShow:false, //遮罩顯示 //大金幣動(dòng)畫 bgCoinAnimation:{}, //小金幣動(dòng)畫 coinAnimation1:{}, coinAnimation2:{}, coinAnimation3:{}, coinAnimation4:{}, coinAnimation5:{}, coinAnimation6:{}, coinAnimation7:{}, } }, methods: { //動(dòng)畫 animation(){ this.coinShow =false this.isShow = true this.bgAnimation() this.smallAnimation() }, //大金幣動(dòng)畫 bgAnimation(){ var animation = wx.createAnimation({ duration:1000, timingFunction: 'ease-in-out', }) this.timer = setTimeout(()=>{ animation.translate3d(0,30,0).step().translate3d(0,0,0).step().rotate(80).step({duration:400}).rotate(0).step({duration:500}) this.bgCoinAnimation = animation.export() },100) setTimeout(()=>{ animation.opacity(0).scale(4).step() this.bgCoinAnimation = animation.export() },3000) }, //小金幣動(dòng)畫 smallAnimation(){ var animation = wx.createAnimation({ duration:1000, timingFunction: 'ease-in-out', }) animation.translate3d(0,30,0).step().translate3d(0,0,0).step() setTimeout(()=>{ this.coinAnimation1 = animation },300) setTimeout(()=>{ this.coinAnimation2 = animation },500) setTimeout(()=>{ this.coinAnimation3 = animation },600) setTimeout(()=>{ this.coinAnimation4 = animation },700) setTimeout(()=>{ this.coinAnimation5 = animation },800) setTimeout(()=>{ this.coinAnimation6 = animation },900) setTimeout(()=>{ this.coinAnimation7 = animation.export() },1000) //小金幣掉落動(dòng)畫 setTimeout(()=>{ animation.translate3d(0,1000,0).step() this.coinAnimation1 = animation this.coinAnimation2 = animation this.coinAnimation3 = animation this.coinAnimation4 = animation this.coinAnimation5= animation this.coinAnimation6 = animation this.coinAnimation7 = animation },3000) //動(dòng)畫結(jié)束,重置動(dòng)畫初始位置 setTimeout(()=>{ this.coinShow =true var animation = wx.createAnimation({ duration:300, timingFunction: 'ease-in-out', }) var animation2 = wx.createAnimation({ duration:300, timingFunction: 'ease-in-out', }) animation.translate3d(0,-1000,0).step() animation2.translate3d(0,-1000,0).step().scale(1).step() this.bgCoinAnimation = animation2.export() this.coinAnimation1 = animation this.coinAnimation2 = animation this.coinAnimation3 = animation this.coinAnimation4 = animation this.coinAnimation5= animation this.coinAnimation6 = animation this.coinAnimation7 = animation setTimeout(()=>{ this.isShow = false },500) },4000) } }, mounted () { }, onShow(){ } } </script> <style lang="scss" scoped> .container{ position:absolute; top:0; left: 0; width: 100%; height: 100vh; // z-index: 999; background: rgba(5, 5, 5,0.5) } .bgCoin{ background: rgb(233, 201, 19); border-radius: 50%; width: 100rpx; height: 100rpx; position: absolute; left: 350rpx; margin-left:-50rpx; top:600rpx; text-align: center; line-height: 100rpx; color: #ffffff; transform:rotate(180deg); transform:translate3d(0,-1000rpx,0); } .coinShow{ opacity: 0; } .coin{ background: rgb(233, 201, 19); border-radius: 50%; width: 50rpx; height: 50rpx; position: absolute; font-size: 24rpx; text-align: center; line-height: 40rpx; color: #ffffff; transform:translate3d(0,-1000rpx,0); } .coin1{ top:40rpx; left:60rpx; } .coin2{ top:90rpx; left:200rpx; } .coin3{ top:860rpx; left:250rpx; } .coin4{ top:150rpx; left:600rpx; } .coin5{ top:270rpx; left:500rpx; } .coin6{ top:490rpx; left:580rpx; } .coin7{ top:350rpx; left:150rpx; } </style>
使用 引入組件
<template> <view> <view @click="clockInAnimation">立即簽到</view> <clockAnimation :isShow="clockIsShow" ref="clockAnimation"></clockAnimation> </view> </template> <script> //引入組件 import clockAnimation from "../../components/clockAnimation.vue"; export default { components: { clockAnimation }, data() { return { clockIsShow: false, } }, methods: { clockInAnimation() { this.clockIsShow = true; this.$refs.clockAnimation.animation(); }, } </script>
感謝各位的閱讀!關(guān)于“如何使用mpvue實(shí)現(xiàn)小程序簽到金幣掉落動(dòng)畫”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
網(wǎng)頁標(biāo)題:如何使用mpvue實(shí)現(xiàn)小程序簽到金幣掉落動(dòng)畫-創(chuàng)新互聯(lián)
網(wǎng)頁鏈接:http://www.rwnh.cn/article30/dspiso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)、做網(wǎng)站、軟件開發(fā)、網(wǎng)頁設(shè)計(jì)公司、小程序開發(fā)、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容