Вероятное решение - использовать iframe
для запуска загрузки. Но, основываясь на предыдущем ответе, метод iframe не может работать на Chrome.
Вам нужно показать значок загрузки в браузере, поэтому я думаю, что другой способ - создать fake loading icon
.
Вы можете обновить значок браузера вручную. Есть несколько руководств по обновлению иконки браузера.
А затем попытайтесь оживить значок. Большая часть браузера не поддерживает значок gif
, поэтому вам нужно обновить значок каждые несколько секунд.
Это демонстрационный код:
var favicon_images = [];
for (var i = 1; i <= 12; i++)
favicon_images.push('./icon/' + i + '.png');
var image_counter = 0;
setInterval(function() {
var link = document.querySelector("link[rel*='icon']") || document.createElement('link');
link.type = 'image/x-icon';
link.rel = 'shortcut icon';
link.href = favicon_images[image_counter];
document.getElementsByTagName('head')[0].appendChild(link);
if(image_counter == favicon_images.length -1)
image_counter = 0;
else
image_counter++;
}, 150);
Я создаю быстрое демо. Демо
С помощью этой демонстрации вы можете заметить, что анимация пиктограмм не проходит гладко. Это происходит потому, что каждый раз, когда мы обновляем значок, браузер запрашивает значок снова.
Преобразуйте изображение в формат base64, чем оно работает плавно.
Base64 демо
Теперь вам просто нужно найти значок загрузки такой же, как у Chrome
и других популярных браузеров, затем вызвать fake loading
при вызове ajax.
<Ч />
Здесь я вставил учебник по иконке изменения: