Мне сказали использовать document.ready, когда я впервые начал использовать Javascript/jQuery, но я никогда не узнал почему.
Может кто-нибудь дать некоторые основные рекомендации, когда имеет смысл обернуть javascript/jquery-код внутри jQuery document.ready
?
Некоторые темы, которые меня интересуют:
- Метод jQuery
.on()
: я довольно часто использую метод.on()
для AJAX (обычно на динамически созданных элементах DOM). Если.on()
обработчики кликов всегда внутриdocument.ready
? - Производительность. Является ли более эффективным поддерживать различные объекты javascript/jQuery внутри или снаружи document.ready(также значительная разница в производительности?)?
- Область объекта: страницы, загруженные AJAX, не могут получить доступ к объектам, которые внутри документа на предыдущей странице. уже, правильно? Они могут обращаться только к объектам, которые были снаружи document.ready(т.е. Действительно "глобальными" объектами)?
Обновление:. Чтобы следовать наилучшей практике, весь мой javascript (библиотека jQuery и код моего приложения) находится на внизу моей HTML-страницы, и я использую атрибут defer
в скриптах, содержащих jQuery, на моих загруженных AJAX страницах, чтобы я мог получить доступ к библиотеке jQuery на этих страницах.