1
qfdk 2016-12-29 16:11:03 +08:00 via Android
js ? socket io 跟后端通信 或者虚假一点 第一次 random 进度 最后 完成的 callback 跑满
|
2
am241 2016-12-29 16:17:08 +08:00
每次递增 1/(2**n)
|
3
inkWave 2016-12-29 16:19:20 +08:00
前面 99%想怎么写怎么写,接到成功回调后,直接进度条 width 100%
|
4
liyu4 2016-12-29 16:20:04 +08:00
没有非常好的办法,三楼的想法比较赞成。
|
5
knightdf 2016-12-29 16:25:42 +08:00
本来都是这样的,前面 99%随意你,后面 1%才是关键
|
6
dwood 2016-12-29 16:26:39 +08:00
要精确的话,后台程序异步执行的同时往缓存里面写进度,前端每隔一段时间请求进度值。
|
7
lijy91 2016-12-29 16:41:31 +08:00
你可以看看这个插件的逻辑: http://ricostacruz.com/nprogress/
|
8
Felldeadbird 2016-12-29 16:49:48 +08:00
做一个伪进度就可以了。等后端回来就直接 100%。
|
9
ChefIsAwesome 2016-12-29 16:56:27 +08:00
对用户真正有用的进度条是能看到结束时间的进度条。想知道结束时间基本是不可能的,想知道当前进度,要实现起来也是异常困难的。所以你还是弄个菊花转转吧。
|
10
wesley 2016-12-29 17:10:54 +08:00
分解成 N 个子任务,在队列中依次请求,每完成一个,进度增加 1/N
|
11
qwer1234asdf 2016-12-29 17:24:33 +08:00
ajaxForm
|
12
SpicyCat 2016-12-29 18:06:08 +08:00
用户想看进度条其实是有两层意思:
1. 想知道预估结束时间。很多时候这个办不到。 2. 想知道页面有没有死掉。这个简单。总之想办法让页面一直有反馈就行了,比如用户多次提交就提示用户耐心一点。 |
13
jsq2627 2016-12-29 19:09:17 +08:00 via iPhone
道理很简单啦
真的进度条只有在文件下载上传、压缩解压这种能准确衡量的情况下才能做出来 其他都是假进度条,只有 0 和 100 之分,动画只是骗人用的 |
14
bdbai 2016-12-29 19:30:19 +08:00 via Android 1
后端用 chunked 格式回响应,随时返回进度,兼容性也不错。
|
15
Tink 2016-12-29 22:40:14 +08:00
做一个 flash, 自动走到 100
哈哈哈哈哈 |
16
HLT 2016-12-30 09:37:37 +08:00
用 JS 库。。。很多
|