Почему «$ (). Ready (обработчик)» не рекомендуется?

ОтСайт документации jQuery API заready

All three of the following syntaxes are equivalent:

$(document).ready(handler) $().ready(handler) (this is not recommended) $(handler)

После выполнения домашней работы - чтение и игра сисходный код, Я не имею понятия почему

$().ready(handler) 

не рекомендуется Первый и третий способы одинаковы, третий параметр вызывает функцию ready для кэшированного объекта jQuery сdocument:

rootjQuery = jQuery(document);
...
...

// HANDLE: $(function)
// Shortcut for document ready
} else if ( jQuery.isFunction( selector ) ) {
    return rootjQuery.ready( selector );
}

Но функция ready не взаимодействует с селектором выбранных элементов узла.ready исходный код:

ready: function( fn ) {
    // Attach the listeners
    jQuery.bindReady();
        // Add the callback
    readyList.add( fn );
        return this;
},

Как видите, добавление обратного вызова во внутреннюю очередь оправдано (readyList) и не изменяет и не использует элементы в наборе. Это позволяет вам позвонитьready функция на каждом объекте jQuery.

Подобно:

regular selector: $('a').ready(handler) DEMO Nonsense selector: $('fdhjhjkdafdsjkjriohfjdnfj').ready(handler) DEMO Undefined selector:$().ready(handler) DEMO

Наконец-то ... на мой вопрос:Why $().ready(handler) is not recommended?

Ответы на вопрос(6)

Ваш ответ на вопрос