使用进度条异步加载耗时的脚本
问题描述:
我正在加载一个动态应用程序(需要20-30秒),并且我正在尝试创建一个动态进度条,向用户显示多少任务已在页面加载时动态完成。使用进度条异步加载耗时的脚本
function progress(percent)
{
$("#progressbar").progressbar({value: Math.round((percent*100))});
}
这是通过简单的函数调用叫做:
我通过设置缓冲区,以虚假的,有我的脚本输出一行JavaScript因为它的进展调用一个函数来增加滚动条完成这个比如我的页面生成的进度(15)并实时发送到浏览器。有人在另一个线程上建议我可以通过将进度条附加到.load()AJAX调用来优化这一点,但据我所知,只有在整个页面加载后才会返回。有什么办法让我使用某种类型的异步调用来执行耗时的代码,并且能够在执行时显示实时进度?
答
您需要类似售票系统的东西。当客户请求这个耗时的操作时,它们被赋予一个ticket-id。
现在他们可以轮询服务器的更新;这可以通过与实际处理请求不同的进程/脚本来提供。如果您在问题中添加更多详细信息,我会更新此答案。
我动态地喜欢动态的第一个动态段落。 ;) – spender 2010-08-09 00:09:40
服务器端的语言是什么? – quantumSoup 2010-08-09 00:10:08
动态超载 – Marko 2010-08-09 00:11:50