我正在使用所有可能的方法来清除 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/