javascript - Canvas - 清除矩形不起作用

标签 javascript html canvas

我想将一个矩形从 Canvas 的顶部移动到底部。但不知怎的, Canvas 并没有被清除。怎么了?

js fiddle

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()函数中。

您可能还想查看

和/或类似的。

关于javascript - Canvas - 清除矩形不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27283422/

相关文章:

javascript - 从字符串中提取多个参数并执行某些操作

javascript - 有什么办法可以 console.log 一个 html 对象的内容?

javascript - 在 Canvas 中旋转图像

javascript - React 导航 - 堆栈导航按钮

java - 如何使用 JSON/JQUery 向外部网站提交数据并获取结果并显示在我的 JSP 页面中

javascript - 如何永久更改 HTML 文件上的 DOM

javascript - 使用 webshims 和 Modernizr 来支持旧版浏览器

html - 更改背景图像重复文件

javascript - 检查图像是否在游戏循环之前加载

javascript - jsPDF 中的 UTF-8 正在工作,需要帮​​助样式