есть в XHR показатель прогресса насколько я помню
XHR имеет параметр readyState от 0 до 4
0 не запущен, 1 соединение с сервером установлено, 2 ответ получен, 3 обработка ответа, 4 ответ обработан.
Так вот: между состояниями 0 и 1,1 и 2 пройдет неизвестное количество времени. Эти номера не помогают двигать полоску лоад-бара.