javascript - 从待机模式唤醒后,Chrome Canvas 变为空白

标签 javascript canvas

我们的应用程序下载大约 15meg 的图像并将它们显示在 html Canvas 中。我们正在进行一些压力测试,发现在打开大约 10 个选项卡后,如果我们将计算机置于 sleep 模式,当它回来时, Canvas 是空白的 - 它只显示纯白色(这种情况并非每次都会发生) ,但非常频繁)。

我们将图像保存在 JavaScript Image 对象中,我检查了这些对象中的内存,它们似乎仍然有效。我尝试通过在错误发生之前和之后拍摄快照来使用 Chrome 内存分析,在某些情况下使用的内存较少,在其他情况下使用的内存较多,因此这似乎并没有告诉我太多信息。

我很好奇是否有人以前见过这个,即使没有,是否有人有关于调试类似内容的指示。如果有一种方法可以让我们确定是否发生了错误,这样我们就可以触发图像的重新加载,那将是完全足够的,但恐怕在我找出导致错误的原因之前,我什至不知道是什么尝试检查。

最佳答案

@rtpg - 绘制循环继续运行,但不会显示任何内容

由于某种原因, Canvas 将不再更新。我无法确定问题何时发生,但确实弄清楚了如何让 Canvas 再次开始显示图像。需要我调整 Canvas 大小(我将宽度更改一个像素),然后重新绘制(这是令人尴尬的黑客行为)。我目前通过 setTimeout 将其设置为每 30 秒运行一次,但一旦我可以验证从 sleep 模式中退出时被调用,可能会更改为 window.onfocus。

关于javascript - 从待机模式唤醒后,Chrome Canvas 变为空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18347683/

相关文章:

javascript - 将 json 传递给 Vue 组件并循环

javascript - 将div高度设置为向下滑动的距离

javascript - 为什么我们可以在闭包内部函数的末尾放置一个变量?

javascript - 从命令行将第三方网站的 HTML Canvas 捕获为图像

javascript - 使用jquery,如何清除 Canvas 中的项目?

javascript - 为什么 canvas.toDataURL() 抛出安全异常?

javascript - 具有多 Ajax 文件上传和进度的 FileReader

javascript - 使用 Node 的加密库创建自签名证书?

javascript - 使用 isPointInPath() 引用 Path2D 对象?

JavaFx 旋转文本