微信小程序中setInterval的使用方法

时间:2021-05-18

微信小程序中setInterval的使用方法

看了下小程序的画布功能,简单的使用了一下,用蹩脚的逻辑做了个 “弹啊弹,弹走鱼尾纹的小球”,一起来看下吧。过程不重要主要是画布的使用哦。(本来想传gif的来着,后来发现不会传,就传个图片吧,想看的自己下载下来玩呦)

先上图,后上代码了:

js:

var winWidth = 0 var winHeight = 0 var diameter = 10 var time = 0 Page({ data:{ numX:1, numY:1 }, xy:{ //小球的xy坐标 x:10, y:10 }, onLoad:function(options){ //进来先获取手机的屏幕宽度和高度 wx.getSystemInfo({ success: function(res) { console.log(res) winHeight = res.windowHeight; winWidth = res.windowWidth; } }) }, onReady:function(){ //循环滚动小球 for(var i=0;i<1;i++){ //随机一个滚动的速度 time = (1+Math.random()*10) setInterval(this.move,time); console.log(time) } }, move(){ //x if(this.data.numX == 1){ this.xy.x++ }else{ this.xy.x-- } //判断x轴的状态 if(this.xy.x == winWidth-diameter){ this.data.numX=2 } if(this.xy.x == diameter){ this.data.numX=1 } //y if(this.data.numY == 1){ this.xy.y++ }else{ this.xy.y-- } //判断y轴的状态 if(this.xy.y == 400-diameter){ this.data.numY=2 } if(this.xy.y == diameter){ this.data.numY=1 } //画图 this.ballMove(this.xy.x,this.xy.y); }, ballMove(x,y){ // 使用 wx.createContext 获取绘图上下文 context var context = wx.createContext() // context.setShadow(0,1,6,'#000000')//阴影效果 context.setFillStyle("#FF4500")//球的颜色 context.setLineWidth(2) context.arc(x, y, diameter, 0, 2 * Math.PI, true) context.fill() // 调用 wx.drawCanvas,通过 canvasId 指定在哪张画布上绘制,通过 actions 指定绘制行为 wx.drawCanvas({ canvasId: 'ball', actions: context.getActions() // 获取绘图动作数组 }) } })

wxml:

canvas-id="ball">

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章