Да
$(document).ready(function() {
/* code */
});
… и:
$(function() {
/* code */
});
… фактически одинаковы, и последний обычно называют сокращением для первого.
Если вам интересно , почему они дают одинаковый результат, это связано с конструктором jQuery - функцией jQuery()
с псевдонимом $()
- и его разрешенные входы.
Конструктор задокументирован по адресу api.jquery.com / jquery / , и его два соответствующих параметра описаны ниже.
jQuery( selector [, context ] )
Принимает строку, содержащую селектор CSS, который затем используется для сопоставления с набором элементов.
Возвращает объект jQuery.
Эта опция выше, как вы вызываете конструктор jQuery при написании:
$(document).ready(function() { /* code */ });
Объект document
выбран и используется для создания jQuery объекта . Когда DOM полностью загружен, этот объект jQuery вызывает обратный вызов (анонимная функция) в пределах ready()
.
jQuery( callback )
Связывает функцию, которая будет выполнена после завершения загрузки DOM.
Возвращает объект jQuery.
Эта опция выше, как вы вызываете конструктор jQuery при написании:
$(function() { /* code */ });
Функция обратного вызова (анонимная функция) используется для создания объекта jQuery, а когда DOM полностью загружен, он вызывается.