Canvas 在onmouseover和onmouseout上更新画布内容

Canvas 在onmouseover和onmouseout上更新画布内容,canvas,html5-canvas,Canvas,Html5 Canvas,我正在使用HTML5创建一个游戏,在我的工作中,我通常基于onmouseover和onmouseout更新画布内容。 我正在做那件事 cxt.beginPath(); cxt.moveTo(10, 10); cxt.lineTo(40, 40); cxt.moveTo(40, 10); cxt.li

我正在使用HTML5创建一个游戏,在我的工作中,我通常基于onmouseover和onmouseout更新画布内容。 我正在做那件事

                    cxt.beginPath();
                    cxt.moveTo(10, 10);
                    cxt.lineTo(40, 40);
                    cxt.moveTo(40, 10);
                    cxt.lineTo(10, 40);
                    cxt.stroke();
                    cxt.closePath();
                    content[canvasNumber - 1] = 'Value';

现在,在onmouseout事件中,我想清除画布的内容,而不覆盖当前内容!!,我怎么能这么做

我想我知道你的意思,但是你的语言要小心一点。你说:

不覆盖当前内容

但是你刚才画的X是当前内容!我认为你真正想说的是“不清除以前存在的内容”

当然,我们会尽最大努力回答您的问题,但请在提问时尽量使用准确、仔细的语言。英语可能不是你的第一语言,你可能会说得比我的第二语言好,但即使你不确定单词,即使你必须用几种不同的方式说同样的话,更多的语言是值得的,只是为了确保我们理解

谢谢!现在就来回答吧


如果要清除X而不覆盖以前存在的内容,则必须保存以前存在的内容

要保存画布位图,我们可以使用所谓的“内存画布”或“屏幕外画布”。您可以使用
document.createElement
创建这些位图,并且从不将它们添加到DOM中

下面是一个代码示例,用于在出现
mouseover
时保存位图,并在出现
mouseout
时恢复位图:


我不明白你在问什么——你想在不覆盖内容的情况下清除内容吗?没错,我想在onmouseover事件之前将画布设置为以前的状态非常感谢您的回答,这对我帮助很大:)