老师,我在你倒计时那个程序中,给每个小球加上了 径向渐变的效果,使小球看起来有立体效果,但是在iPhone4上卡的不行,如何进行性能优化呢?
for (var i = 0; i < BALLS.length; i++) { ct.beginPath(); ct.arc(BALLS[i].x, BALLS[i].y, BALLS[i].r, 0, 2*Math.PI); ct.closePath(); var radial = ct.createRadialGradient(BALLS[i].x,BALLS[i].y,0,BALLS[i].x,BALLS[i].y,BALLS[i].r); radial.addColorStop(0,'white'); radial.addColorStop(1,BALLS[i].color); ct.fillStyle = radial; ct.fill(); if (BALLS[i].y - BALLS[i].r < WIN_HEIGHT) { BALLS[n++] = BALLS[i]; } }
后来发现canvas的性能是个大问题,尤其在做较为复杂的动画上