如何暂停JavaScript以允许渲染
How to suspend JavaScript to allow render
我有一个运行模拟的小脚本,我想将结果"实时"呈现:
for ( i < simulation steps ) {
do_simulation();
render_with_flot();
}
我注意到,情节只在最后一步后渲染。
- 是否有一种方法可以"暂停"javascript以某种方式允许渲染在每次迭代后运行?
- 或者有一种方法使队列同步运行?
- 或者我需要为for循环的每次迭代设置自己的超时吗?这似乎有点麻烦。
取决于它需要运行多快,但最好的方法是使用SetInterval
伪代码/hand-written-javascript-that-probably-does -run:
var PerformedSteps;
var Interval;
PerformedSteps = 0;
Interval = setInterval(work, 1000/60); //60 times/second
function work()
{
PerformedSteps++;
if (PerformedSteps == simulation_steps)
{
clearInterval(Interval);
return;
}
do_simulation();
render_with_flot();
}
作为@PhonicUK解决方案的替代方案,您可以在work()结束时执行setTimeout()以安排对work()的下一次调用,从而使渲染有机会发生&
相关文章:
- 通过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动态渲染表单