微信小程序> 小程序抽奖动画实现

小程序抽奖动画实现

浏览量:2901 时间: 来源:qiphon3650

#小程序抽奖动画实现

所有的抽奖都是由后台计算后得到的,前台只做动画展示

view class='top-banner center' !--  轮播展示中奖信息区域  --    swiper autoplay="{{true}}" interval="{{1500}}" circular="{{true}}" vertical='{{true}}'        block wx:for="{{prizeInfo}}" wx:key="index"            swiper-item                view{{item.name}}{{item.prize}}/view            /swiper-item        /block    /swiper/view!-- 轮播结束 抽奖转盘  --view class='turntable' bindtap='doLottery'    image class='turntable-bj' style="transition:all {{time?time:'3s ease-in'}}; transform:rotate({{transformDeg + 'deg'}}) "  src='../../../img/turntable.png'/image    image class='arrow' src='../../../img/arrow.png'    /image/view
const app = getApp();var index = {    data:{          prizeInfo:[            {                name:'qiphon',                prize:'5元'            },            {                name:'qiphon23423',                prize:'53元'            },            {                name:'qipsdfhon',                prize:'35元'            }        ],        transformDeg:0,  // 旋转角度        transition:'all 3s cubic-bezier(0.005, 1.340, 1.000, 0.865)',        time:'999s'    },    onLoad(opt){        console.log(opt)    },    onReady(){        this.animation = wx.createAnimation({            timingFunction:'esse-in-out',            duration:2000        });        this.animationDeg = 360;    },    loadCoupons(){ // 加载获奖信息            },    doLottery(){  // 抽奖        var _this = this;        if(this.aniRotate)return;        this.aniRotate = true;        this.setData({            transformDeg:this.data.transformDeg + 360*900,            time:'100s ease'        })        setTimeout(function(){            console.log('请求完成'+_this.data.transformDeg)  // setTimeout 模拟ajax请求            _this.setData({                transformDeg:-360*4,                time:'3s ease'            })            setTimeout(function(){                console.log('返回结果'+_this.data.transformDeg)                _this.setData({                    transformDeg:360*2 + 0,                    time:'6s cubic-bezier(0.000, 0.765, 0.000, 0.955)'                })                setTimeout(function(){                    _this.aniRotate = false;                    wx.showModal({                        title:'中奖信息',                        content:'恭喜获得奖品'                    })                },6000)            },2000)        },3000)    },}Page(index);
.top-banner{    background: #fff;    padding:20rpx;}.top-banner swiper{    height: 50rpx;    line-height: 50rpx;}/* 转盘 */.turntable{    position: relative;    width: 100%;    height: 530rpx;}.turntable-bj{    display: block;    margin:0 auto;    width:600rpx;    height: 530rpx;}.turntable .arrow{    position: absolute;    top:0;    right:0;    left:0;    bottom:110rpx;    margin:auto;    width:93.5rpx;    height: 212rpx;}

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎