@lilikon

AJax не успевает прогрузить страницу, как исправить?

Есть html код:
Тест



Загрузка данных ...


Есть ajax скрипт:
function showContent(link) {
var cont = document.getElementById('contentBody');
var loading = document.getElementById('loading');
cont.innerHTML = loading.innerHTML;
var http = createRequestObject();
if( http ) {
http.open('GET', link);
http.onreadystatechange = function () {
if(http.readyState == 4 ) {
cont.innerHTML = http.responseText;
}
}
http.send(null);
} else {
document.location = link;
}
}
// создание ajax объекта
function createRequestObject() {
try { return new XMLHttpRequest() }
catch(e) {
try { return new ActiveXObject('Msxml2.XMLHTTP') }
catch(e) {
try { return new ActiveXObject('Microsoft.XMLHTTP') }
catch(e) { return null; }
}
}
}

Есть подгружаемый файл с кодом и подключением css:

тест
_______________________________________________________________
Загрузка страницы работает прекрасно, НО стили прогружаются как бы с задержкой.
Страница уже загрузилась, а стиль еще не совсем, и видно что на странице вначале старый стиль, а потом включается новый

Как сделать что бы стиль загружался быстрее подгружаемой страницы?
  • Вопрос задан
  • 410 просмотров
Пригласить эксперта
Ответы на вопрос 2
Sanasol
@Sanasol Куратор тега JavaScript
нельзя просто так взять и загуглить ошибку
Подключить более быстрый интернет, ну или компьютер обновить.
И заодно узнать как работает http.

Подключать стили заранее, а не во время выполнения когда они УЖЕ нужны.
Еще можно засунуть все стили в <style>.
В общем целую кучу костылей можно придумать.
Ответ написан
@LiguidCool
Вам верно сказали. Подключайте стили в head. Если стили динамические, пусть за это отвечает бэкэнд.
Также есть костылик, когда у вас на весь экран поверх всего fixed div, например с надписью "загрузка ..." По окончанию загрузки он удаляется.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы