4

我有一个 Web 应用程序,它发出了很多 AJAX 请求。有些很轻,有些很重。

我有一个加载屏幕,对于繁重的请求非常有用,但在轻的请求上,它只是一个(n 烦人的)闪烁。

我可以避免显示轻量请求的加载屏幕,但有一个问题:我希望当用户处于远程(慢速)网络中时,这些轻量请求可能仍需要一段时间,使它们变得有用且一点也不烦人闪烁。

我考虑过每加载几个页面就用一个轻请求来测量延迟,但这可能很容易变得复杂(是否已经为此制作了库?)

无论如何,这个问题有标准的解决方案吗?你会怎么做?

4

1 回答 1

3

确实没有办法(据我所知)来测量预先完成 AJAX 请求所需的时间。如果有的话,我很想知道!

我要做的是在一定的延迟后引入加载栏。一个可观的延迟将在繁重的 AJAX 请求上显示加载栏,(希望)防止加载栏在轻量的 AJAX 请求上显示,并在 AJAX 请求异常长时优雅地回退到显示它。

但这并不能阻止闪烁——仍然有机会。但我想这将在不必要的场合显着减少闪烁。

于 2012-04-18T16:10:31.400 回答