浏览器冻结是因为(太重?)JavaScript,画布渲染
browser freezes because of (too heavy?) JavaScript, canvas rendering
我有一个草案网站与画布透视网格呈现的Javascript(窗口。Onload事件),但是在任何最新的浏览器上加载站点时,浏览器至少会冻结几秒钟,甚至用户界面也没有响应。该脚本由6个循环组成,总共超过200次迭代,每次绘制一条线。我怎样才能避免结冰呢?每次迭代后或每次循环后设置超时?会不会是画布的问题?
www.modwebsolutions.com/test (将在渲染期间锁定浏览器)
对我来说效果不错。
你可以做的一件事是,将渲染委托给一个web worker,这样你的"主线程"就可以自由地进行用户交互
嗯,是的,画布是相当未优化的。你的画布也相当大;)
是的,你可以延迟进一步绘制,所以cpu可以照顾浏览器的输入,从而减少冻结;)
请参阅:http://pastehtml.com/view/1e7dan3.html(它没有绘制所有内容,但您可以了解;))
JS与浏览器运行在同一个线程中。这可能是因为绘图太占用cpu了。是的,使用超时/间隔让浏览器在绘制之间做一些其他的事情。
您需要使用setTimeout()或setInterval()来减缓绘图速度并避免浏览器冻结:)
相关文章:
- 通过javascript进行渲染
- 在asp.net页面上使用Javascript编写/渲染图像
- Rails / JavaScript 在渲染视图之前交换 CSS 类
- 在 Javascript 中渲染时取消编码服务器端字符串
- Javascript - 大量渲染的对象
- ArcGIS JavaScript API 渲染要素图层的某些部分
- 如何使用我的 JavaScript 函数渲染融合图
- 如何在 javascript 中渲染后访问 json
- 使用 Javascript 捕获渲染的 HTML 页面
- Javascript Canvas 渲染错误
- 在javascript中渲染哈希的模板
- 在 JavaScript 中渲染 HTML,而无需更改 DOM
- Javascript UI渲染技术
- 如何使用JavaScript将渲染的网页保存为图像
- 浏览器如何异步执行Javascript和渲染
- 如何阻止HTML在JSP页面中使用Javascript进行渲染
- 在javascript中渲染b样条动画的问题
- Packey-JavaScript:Safari渲染问题
- OnClientClick javascript不渲染为asp禁用按钮
- 在Django中使用JavaScript动态渲染表单