画布 - 清除矩形不起作用

Canvas - Clear rect is not working

本文关键字:不起作用 清除 画布      更新时间:2023-09-26

我想将矩形从画布的顶部移动到底部。但不知何故,画布没有被清除。怎么了?

JS小提琴

.JS

(function animloop(){
  requestAnimFrame(animloop);
  redraw();
})();

    function redraw() {
        ctx.clearRect(0,0,canvasWidth, canvasHeight);
        ctx.rect(20,y,50,50);
        ctx.fillStyle="red";
        ctx.fill(); 
        y += 2;
    }

它被清除了,但你没有开始新的路径,因此旧的路径不断被重新绘制。

加:

ctx.beginPath();

redraw()函数中。

您可能还想看看

  • 画布路径到底是什么,ctx.closePath()有什么用?
  • 画布消耗大量内存

和/或类似。