我在嵌入式设备上的基于WebKit的浏览器中看到以下行为:在绘制到画布时出现错误(我不确定错误的性质,但有时它看起来像就好像因为绘图太慢而无法绘制......),画布本身就变得陈旧了。即不再有绘图命令会影响图像(错误在JavaScript代码中捕获)。
现在我无法修复错误 - 如何刷新画布,如在绘制错误后恢复?
答案 0 :(得分:0)
您可以尝试使用以下内容强制重新初始化:
try {
//to catch the error you recevie
} catch(err) {
var tempHeight = canvas.height;
canvas.height = 0;
canvas.height = tempHeight;
}
(有些人会说只设置canvas.height = canvas.height
(或宽度),但这并不适用于所有浏览器。)
另一种方法是分离canvas元素本身,创建一个新元素并使用attachChild
将其附加到原始父元素。
但是,这些都是黑客攻击,希望您看到的错误将在下次更新时删除。