点击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
相关产品推荐
相关产品推荐

