实例介绍
【实例简介】
【实例截图】
【核心代码】
//index.js //获取应用实例 var app = getApp() Page({ data: { circleList: [],//圆点数组 awardList: [],//奖品数组 colorCircleFirst: '#FFDF2F',//圆点颜色1 colorCircleSecond: '#FE4D32',//圆点颜色2 colorAwardDefault: '#F5F0FC',//奖品默认颜色 colorAwardSelect: '#e74c3c',//奖品选中颜色 indexSelect: 0,//被选中的奖品index isRunning: false,//是否正在抽奖 isAdd: true, //是否上分 currentPoints: 0,//当前分 totalPoints:1000,//总分 currentMagnification: 1,//当前倍率 totalSelect:0, //总选择数 isTodayFinish: false, //今天的积分是否已用完 selectPoints: 5, //每押注一次需要的积分 imageAward: [ '../../images/1.jpg', '../../images/3.jpg', '../../images/9.jpg', '../../images/2.jpg', '../../images/1.jpg', '../../images/4.jpg', '../../images/7.jpg', '../../images/3.jpg', '../../images/5.jpg', '../../images/2.jpg', '../../images/1.jpg', '../../images/4.jpg', '../../images/6.jpg', '../../images/5.jpg', '../../images/1.jpg', '../../images/3.jpg', '../../images/2.jpg', '../../images/4.jpg', '../../images/7.jpg', '../../images/8.jpg', ],//奖品图片数组 }, onLoad: function () { var _this = this; //圆点设置 var leftCircle = 7.5; var topCircle = 7.5; var circleList = []; for (var i = 0; i < 24; i ) { if (i == 0) { topCircle = 15; leftCircle = 15; } else if (i < 6) { topCircle = 7.5; leftCircle = leftCircle 102.5; } else if (i == 6) { topCircle = 15 leftCircle = 620; } else if (i < 12) { topCircle = topCircle 94; leftCircle = 620; } else if (i == 12) { topCircle = 565; leftCircle = 620; } else if (i < 18) { topCircle = 570; leftCircle = leftCircle - 102.5; } else if (i == 18) { topCircle = 565; leftCircle = 15; } else if (i < 24) { topCircle = topCircle - 94; leftCircle = 7.5; } else { return } circleList.push({ topCircle: topCircle, leftCircle: leftCircle }); } this.setData({ circleList: circleList }) //圆点闪烁 setInterval(function () { if (_this.data.colorCircleFirst == '#FFDF2F') { _this.setData({ colorCircleFirst: '#FE4D32', colorCircleSecond: '#FFDF2F', }) } else { _this.setData({ colorCircleFirst: '#FFDF2F', colorCircleSecond: '#FE4D32', }) } }, 500) //奖品item设置 var awardList = []; //间距,怎么顺眼怎么设置吧. var topAward = 25; var leftAward = 25; var unitNumber = 0; //押注个数 var unitIntegral = 0; //单个分数 for (var j = 0; j < 20; j ) { unitIntegral = (j 1)*(_this.data.currentMagnification)*10; if (j==0 || j==4 || j==10 || j==14){ unitIntegral = 10; }else if(j==1 || j==7 || j==15){ unitIntegral = 15; }else if(j==2){ unitIntegral = 45; }else if(j==3 || j==9 || j==16){ unitIntegral = 20; }else if(j==5 || j==11 || j==17){ unitIntegral = 25; }else if(j==6 || j==18){ unitIntegral = 30; }else if(j==8 || j==13){ unitIntegral = 35; }else if(j==12){ unitIntegral = 0; }else{ unitIntegral = 40 } if (j == 0) { topAward = 25; leftAward = 25; } else if (j < 5) { topAward = topAward; //166.6666是宽.15是间距.下同 leftAward = leftAward 120 15; } else if (j < 11) { leftAward = leftAward; //150是高,15是间距,下同 topAward = topAward 120 15; } else if (j < 15) { leftAward = leftAward - 120 - 15; topAward = topAward; } else if (j < 20) { leftAward = leftAward; topAward = topAward - 120 - 15; } var imageAward = this.data.imageAward[j]; awardList.push({ topAward: topAward, leftAward: leftAward, imageAward: imageAward , unitNumber: unitNumber, unitIntegral: unitIntegral}); } this.setData({ awardList: awardList }) }, //开始游戏 startGame: function () { if (this.data.isRunning || this.data.totalSelect == 0) return this.setData({ isRunning: true }) var _this = this; var indexSelect = 0 var i = 0; var timer = setInterval(function () { indexSelect ; if(indexSelect >= 20){ indexSelect = 0 } //转盘速度 var random = Math.floor(Math.random() * 20); i = random; if (i > 500) { //去除循环 clearInterval(timer) //获奖提示 indexSelect = _this.data.indexSelect; var awardListCopy = _this.data.awardList; var getPoints = awardListCopy[indexSelect].unitIntegral*awardListCopy[indexSelect].unitNumber; var _totalPoints = _this.data.totalPoints; _totalPoints = getPoints; for(var m=0;m<20;m ){ awardListCopy[m].unitNumber = 0; } _this.setData({ isRunning: false, totalPoints: _totalPoints, awardList: awardListCopy, totalSelect: 0 }) if (_this.data.totalPoints == 0){ wx.showModal({ title: '别灰心', content: '您今天的积分已用完,请明天再来挑战吧!', showCancel: false,//去掉取消按钮 success: function (res) { if (res.confirm) { _this.setData({ isTodayFinish: true }) } } }) } } _this.setData({ indexSelect: indexSelect, }) }, (100 i)) }, unitOperation: function(event){ var index = event.target.id; var _this = this; var awardListCopy = _this.data.awardList; var _totalPoints = _this.data.totalPoints; var unitNumber = _this.data.awardList[index].unitNumber; var selectPoints = _this.data.selectPoints var _totalSelect = _this.data.totalSelect; var addNumberArray = []; if (index==0 || index==4 || index==10 || index==14){ addNumberArray.push(0, 4, 10, 14); }else if(index==1 || index==7 || index==15){ addNumberArray.push(1, 7, 15); }else if(index==2){ addNumberArray.push(2); }else if(index==3 || index==9 || index==16){ addNumberArray.push(3, 9, 16); }else if(index==5 || index==11 || index==17){ addNumberArray.push(5, 11, 17); }else if(index==6 || index==18){ addNumberArray.push(6, 18); }else if(index==8 || index==13){ addNumberArray.push(8, 13); }else if(index==12){ addNumberArray.push(12); }else{ addNumberArray.push(19); } if (_this.data.isAdd && _totalPoints >= selectPoints){ for (var n=0;n<addNumberArray.length;n ){ var aIndex = addNumberArray[n] if (aIndex == 12){ return } awardListCopy[aIndex].unitNumber = 1; } _totalSelect = 1; _totalPoints -= selectPoints; }else if(!_this.data.isAdd && unitNumber > 0){ for (var n=0;n<addNumberArray.length;n ){ var aIndex = addNumberArray[n] if (aIndex == 12){ return } awardListCopy[aIndex].unitNumber -= 1; } _totalSelect -= 1 _totalPoints = selectPoints; }else{ return } _this.setData({ awardList: awardListCopy, totalPoints: _totalPoints, totalSelect: _totalSelect }) }, addNumber: function(){ this.setData({ isAdd: true }) }, minusNumber: function(){ this.setData({ isAdd: false }) }, })
好例子网口号:伸出你的我的手 — 分享!
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论