收藏
回答

canvas2d requestAnimationFrame放一会突然加速,然后停了,再次正常?

// requestAnimationFrame放一会突然加速,然后停了,再次正常?还有就是cancelAnimationFrame 不生效???
// 代码如下
var doubleCount = 0;
const fishBufferLoop = () => {
  if((doubleCount++)%2==0){
    doubleCount = 0;
    goAnimate();
  }
  that.data.bufferCanvas.requestAnimationFrame(fishBufferLoop)
}
that.data.bufferCanvas.requestAnimationFrame(fishBufferLoop)

//
function goAnimate() {
  that.data.bufferContext.clearRect(0, 0, screenWidthOrg, canvasHeight);
  for (var i = 0; i < swimFishList.length; i++) {
      var currentFishObj = swimFishList[i];
      var fishName = currentFishObj.fishName;
      var fWidth = fishName.width * ratio;
      var fHeight = fishName.height * ratio;
      var fTop = currentFishObj.postop;
      var fLeft = currentFishObj.posleft;
      that.data.bufferContext.save()
      that.data.bufferContext.drawImage(
          fishName,
          fLeft,
          fTop,
          fWidth,
          fHeight,
      )
      that.data.bufferContext.restore()
  }
}

回答关注问题邀请回答
收藏

1 个回答

登录 后发表内容
问题标签