Готовность HTML кода
Привет всем!
Такая задача:
Активация по событию onload не подходит, т.к. это событие наступает только после загрузки остальных элементов (изображений и т.п.). Как вариант я пробовал вставлять активирующий JavaScript-код непосредственно перед закрывающим тегом </body>. Этот вариант срабатывает, но мне очень хотелось-бы "уйти" от этого дополнительного активирующего кода. Желательно, чтобы весь скрипт целиком располагался в <head>...</head>. Решаема такая задача? |
Цитата:
Как минимум два плюса от подключения js в конце файла: 1. Пользователь сразу грузит полезный ему контент, а не ждет, пока загрузится бесполезный в данный момент JavaScript. 2. Не нужны никакие onload. Цитата:
Ну и, разумеется, данное событие есть во всех современных фреймворках. |
Kolyaj,
Спасибо огромное! Это именно то, что я искал. Цитата:
Цитата:
И если юзер работает через прокси, то с определенной долей вероятности, ему почти не придется ждать и при первом заходе. |
Скрипты, подключенные в теле документа, визуально тормозят загрузку страницы, особенно если в верстке использовалось абсолютное позицонирование, для прибивания футера к низу или поднятия бесполезного для поисковиков, но необходимого пользователю контента в вверх. Используйте событие DOMContentLoaded и его эмуляцию для старых браузеров и ИЕ, которая займет не более десяти строк, но даст больший эффект, чем подключение скрипта до </body>, к тому же в некоторых браузерах, вы не сможете работать с document.body, подключив скрипт до до </body>. Сделайте себе универсальный загрузчик DOMContentLoaded.
|
Цитата:
|
Я написал визуально. Время на загрузку будет одно и тоже, но подключенный в теле документа скрипт начинает загружаться сразу же, тормозя закрытие тега <body>, который часто выступает, как relative-блок для абсолютнопозиционированны х элементов, станица начинает дергаться. Иногда такой эффект может даже мешать нормальной навигации по сайту, во время ожидания загрузки станицы, поэтому такого рода оптимизации уделяют большое внимание при разработке веб-интерфейсов.
|
Octane,
какие-то странные у вас аргументы. Цитата:
Цитата:
|
Перед открытием боди станица еще не видна.
|
А перед закрытием все уже видно, и всем можно пользоваться, и ничего не нужно ждать.
|
Octane,
Я кажется понял Вашу мысль. Сегодня попробую проделать пару экспериментов чтобы проверить то, о чем Вы говорите. |
Часовой пояс GMT +3, время: 16:13. |