1

我正在使用 HTML5 创建游戏,在我的工作中,我通常会根据 onmouseover 和 onmouseout 更新画布内容。onmouseover 我正在这样做

                    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 事件我想清除该画布的内容而不覆盖当前内容!!,我该怎么做?!

4

1 回答 1

3

我想我知道你的意思,但你必须更加小心你的语言。你说:

不覆盖当前内容!!

但是你刚才画的X当前内容!我认为您的真正意思是“不清除以前的内容”。

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

谢谢!现在回答。


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

要保存画布位图,我们可以使用所谓的“内存画布”或“屏幕外画布”。你通过使用document.createElement而不是将它们添加到 DOM 来制作它们

mouseover这是一个在发生时保存位图并在发生时恢复该位图的代码示例mouseout

http://jsfiddle.net/simonsarris/uRXeN/

于 2012-07-01T01:33:17.773 回答