HTML5 Canvas 不清除

标签 html canvas

我正在使用所有可能的方法来清除 Canvas ,但没有成功。只要我在 Canvas 上单击返回,所有以前的绘图就会重新出现。

这是代码。

function clearCanvas() {

    //clickX = [];
    //clickY = [];
    //clickDrag = [];
    //context.clearRect(0, 0, canvas.width, canvas.height);

    //curColor = colorBlack;
    //redraw();

    //clickX = new Array();
    //clickY = new Array();
    //clickDrag = new Array();

    context.fillStyle = '#faebd7'; 
    context.fillRect(0, 0, canvas.width, canvas.height); 
    canvas.width = canvas.width; 
    //context.beginPath();

};

最佳答案

在我看来,您正在使用数组来存储绘图信息。 我看到您已经尝试清除它们,但据我所知,最好的清除方法是将长度设置为零。试试这个:

function clearCanvas() {
clickX.length = 0;
clickY.length = 0;
clickDrag.length = 0;
context.clearRect(0, 0, canvas.width, canvas.height);
};

关于HTML5 Canvas 不清除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12736565/

相关文章:

Android OntouchListener,绘制位图时检查图像相交

javascript - 使形状在 Canvas 上向上移动

html - 如何将图像像素转换为 Canvas 中的S曲线形状

html - css html中菜单栏的下拉列表

jquery - 滚动时如何锁定页面?我如何在所有设备上显示粒子?

javascript - 计算从特定日期开始的天数js+html链接

javascript - 在用户单击时使用 ajax 加载 processing.js 草图

php - 发布时将另一个值链接到 textarea 元素以用作 id [PHP]

javascript - 使用 DOCTYPE 时使用 JavaScript 设置样式的奇怪问题

javascript - Canvas 动画条直到该值