javascript - Kineticjs 停止渲染

标签 javascript html canvas kineticjs

将 kinetic js 用于信息亭上的可搜索目录列表。效果很好!除了一个问题。我在 chrome 中,旁边有一个 a、b、c、d 等列表,用户可以单击以获取以该字母开头的名称。当点击一个字母时,它会重新渲染整个舞台。这样做 10-15 次后,舞台出现空白,但我仍然可以点击名称所在的位置并获取其详细信息“灯箱”或点击字母所在的位置并获得新列表,但仍然是空白舞台,即在任何矩形或文本上都没有填充或颜色。更糟糕的是,如果我转到一个完全不同的 kiosk 页面,该页面使用 KineticJS 做其他事情,它不会呈现,也不会再次呈现,除非我离开域(本地主机)并去谷歌或其他东西然后回来,或者打开一个新标签页或重新启动 Chrome。我现在完全迷失了,如果我无法解决这个问题,那么在没有 Kinetic 的情况下重做将是一个巨大的损失。

我已经完成并尝试确保我的内存管理正常并且非常确定。我的系统内存确实增长了,但 Chrome 似乎可以相当快地收集垃圾。我什至尝试在我重新渲染时创建的每个 kineticjs 对象上调用 destroy() 但没有成功。

最佳答案

Chrome 29 中存在一个与 Canvas 渲染有关的已知问题。该问题不存在于版本 28 或 30 中。加入聚会并帮助引起人们对问题的关注。 :) https://code.google.com/p/chromium/issues/detail?id=280153&thanks=280153&ts=1377616231#makechanges

作为临时解决方法,您可以通过将“禁用加速 2D Canvas ”标志设置为启用来关闭 2d Canvas 加速。

关于javascript - Kineticjs 停止渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18366009/

相关文章:

javascript - 在现代 Firefox/Chrome/Edge 浏览器中对 PDF 进行数字签名

javascript - 刷新页面,然后转到特定的div

html - 永久删除带有 web 配置的 HTML 扩展

javascript - 当资源发布到根文件夹时,Animate CC HTML5 横幅不起作用

javascript - X - 可编辑输入可在单击其他元素时进行编辑

javascript - 创建一个可单击一页上多个按钮的书签

javascript - 减少函数中的变异累加器是否被认为是不好的做法?

css - Font Awesome 显示框而不是图标

javascript - 将 stackblur 与 Canvas 一起使用不会模糊我的图像

jquery - 无法使用 jQuery 在 HTML5 Canvas 上绘制