如何使用ajax做进度条,进度信息如何返回?

2024-12-31 23:04:36
推荐回答(2个)
回答1:

AJAX进度条一般不能反应真实进度(我只是说一般,你所见到的都是伪进度条),其原因就是因为这样做简单,而且用户体验还不错,
实现方法如下:
点击按钮或者干嘛干嘛一触发这个事件的时候,让进度条 从 0% 缓慢/迅速 增长到 20%。
beforeSend 触发一个事件,让进度条 从20% 缓慢/迅速 增长到50%。
complete(状态)触发,进度条到 80%。
将AJAX回调数据处理完成,进度到100%。

------------------------------
如果有更高层次要求的话,比如上传进度,要用侦听,每隔1秒或者多少毫秒提交一次AJAX请求来查询进度。比如上传之前,先把文件大小(假设100MB)保存在服务器上的某个Session或者变量里,上传的临时文件大小(假设某次提交侦听请求时,已经上传了5MB),两个数值一除,5%就出来了。。。

回答2:

AJAX进度条一般不能反应真实进度(我只是说一般,你所见到的都是伪进度条),其原因就是因为这样做简单,而且用户体验还不错,\x0d\x0a实现方法如下:\x0d\x0a点击按钮或者干嘛干嘛一触发这个事件的时候,让进度条 从 0% 缓慢/迅速 增长到 20%。\x0d\x0abeforeSend 触发一个事件,让进度条 从20% 缓慢/迅速 增长到50%。\x0d\x0acomplete(状态)触发,进度条到 80%。\x0d\x0a将AJAX回调数据处理完成,进度到100%。\x0d\x0a\x0d\x0a------------------------------\x0d\x0a如果有更高层次要求的话,比如上传进度,要用侦听,每隔1秒或者多少毫秒提交一次AJAX请求来查询进度。比如上传之前,先把文件大小(假设100MB)保存在服务器上的某个Session或者变量里,上传的临时文件大小(假设某次提交侦听请求时,已经上传了5MB),两个数值一除,5%就出来了。。。