$ (document).ready() и инициализация jQuery в конце страницы
Позвольте мне понять это прямо. Согласно наилучшей практике, мы должны инициализировать jQuery в нижней части страницы. Если мы это сделаем, любая ссылка на объект jQuery (т.е. $
или jQuery
) над ссылкой будет пустой. Однако, как и для $(document).ready()
, причина, по которой эта функция jQuery когда-либо понадобится, - это когда вы хотите отложить выполнение функции после загрузки страницы. Это, кажется, конфликт.
Как использовать функциональность $(document).ready()
в верхней части страницы и по-прежнему ссылаться на jQuery в нижней части страницы? Я думаю, что jQuery должен быть инициализирован в верхней части страницы именно по этой причине.
Ответы
Ответ 1
Если вы собираетесь использовать свои сценарии в нижней части страницы для эффективности, а дополнительных элементов (кроме </body> and </html>
) нет, вам даже не понадобится использовать $(document).ready(...);
.
Размещение вашего кода в верхней части страницы имеет смысл семантически, а время загрузки "экономия" в большинстве случаев незначительно. Это действительно имеет значение только тогда, когда сценарии огромны или когда скрипты находятся на другом сервере, который может или не может быть активным.
Если вы используете jQuery в прямом эфире, я бы предложил разместить его внизу страницы. Если вы используете jQuery с локальной связью, верхняя часть должна быть в порядке. Просто используйте минимальный код.
Ответ 2
Просто поставьте $(document).ready
ниже, где вы инициализируете jQuery независимо от того, где это.
В действительности, хотя вы должны положить все свои JS внизу, даже $(document).ready
.