javascript - HTML Canvas,缓慢且笨重

标签 javascript html canvas browser html5-canvas

我有 4 个 Canvas ,每一个 Canvas 都是 64x128px。我将它们堆叠起来是因为我想模仿小型水平 LCD 屏幕及其功能。我的问题是它变得迟缓和笨重,我有 2 个动画同时运行,重新加载时间为 100 毫秒。我可以做些什么来解决这个问题,或者我只是想在浏览器中做很多事情?

基本上我有间隔,每 100 毫秒我就会清理 Canvas 并再次绘图。

最佳答案

是否需要每 100 毫秒刷新一次?您只想在需要时重绘 Canvas 以获得最大效率。

例如,您可能只希望每 100 毫秒删除并重绘一张 Canvas ,并且只应在该 Canvas 上绘制您想要每 100 毫秒重绘的内容。如果某些内容仅因用户交互而发生变化,请将其放在不同的 Canvas 上,并且仅在用户与其交互(例如:点击)时重新绘制该 Canvas 。

动画也可能看起来很滞后,因为您只是每 100 毫秒重绘一次。这只是每秒 10 次 (10fps) - 也许您应该考虑使用 requestAnimationFrame() 。很难知道您什么时候没有共享代码。

关于javascript - HTML Canvas,缓慢且笨重,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50463418/

相关文章:

javascript - 如何使用 cookie 保存 menu_toggle 的设置?

javascript - 检测鼠标悬停并显示 HTML Canvas 上点的工具提示文本

javascript - 如何将div添加到数据表中

css - 现在使用 <br/> 标签已经过时了吗?如果是这样,我应该改用什么?

javascript - 刷新/重新加载 map : Google maps API V2

javascript 将 Canvas 裁剪为内容

javascript - HTML5 导出按钮不工作,除了复制按钮

jquery - 当标题元素使用固定位置时使用 anchor 标记

javascript - 标签没有以 appendChild(element) 结束。 (缺少 </canvas> 标签,所有其他标签都正确关闭)

javascript - AJAX 调用后 PHP 结果不显示