You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

点击Eraser按钮无法清除Canvas内容的技术求助

问题解决:点击Eraser按钮无法清除Canvas内容

你的代码核心问题是:Canvas 2D绘图上下文并没有clear()方法,调用这个方法不会产生清除画布的效果,正确清除画布内容的方式是使用clearRect()方法。

修改后的JavaScript代码如下:

function EraseCanvas()
{
    document.getElementById('SignatureField').value='';
   
    var canvas1 = document.getElementById("colors_sketch");
    var context = canvas1.getContext("2d");

    // 使用clearRect清除整个画布,参数依次为起始x坐标、起始y坐标、清除宽度、清除高度
    context.clearRect(0, 0, canvas1.width, canvas1.height);
}

这里用canvas1.width和canvas1.height代替硬编码的500和200,能让代码更灵活——后续如果修改Canvas尺寸,无需手动调整清除范围的数值。

内容的提问来源于stack exchange,提问作者Anjali

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 22:26:59