предотвращение запуска JS, когда страница не загружена

StackOverflow https://stackoverflow.com/questions/1056101

Вопрос

Я столкнулся с проблемой.Когда я использую jQuery для загрузки страницы, содержащей тяжелый javascript, страница зависает.Я полагаю, это потому, что js выполняется до загрузки страницы, поскольку мой локальный сайт не зависает.Однако $(document).готово(функция(){});кажется, не работает с динамически загружаемыми страницами?это правда?или что-нибудь, что я мог бы сделать, чтобы решить эту проблему.Миллион благодарностей!

Это было полезно?

Решение

$(document).ready() отлично работает на динамических страницах.Где-то в вашем коде должна быть ошибка.

Первое, что нужно сделать, это попробовать Просмотреть исходный код и сохранить HTML в виде простого .html файл, затем загрузите этот файл в свой браузер.Если это все еще не удается, то вы знаете, что проблема не имеет ничего общего с серверным ASP / PHP / любым другим кодом.Затем попробуйте удалять HTML и JavaScript по частям, пока проблема не исчезнет.Это поможет вам сузить круг подозреваемых.Если вы можете уменьшить свою страницу до небольшого файла, который по-прежнему демонстрирует проблему, опубликуйте это здесь, и мы постараемся помочь.

Другие советы

Попробуйте использовать

$(window).load(function(){
dosomething();
});

Он запустит js после загрузки всей страницы.

Избегайте использования

$(document).ready(function(){
dosomething();
}); 

Он запустит js сразу после загрузки DOM.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top