2010-04-28 5 views
5

Есть ли разница между использованием:JQuery документ готовый обработчик

$(document).ready(function(){ 

против

$(function(){ 

ли один из них работает лучше, чем другие, в некотором роде, или это первый раз сокращенный версия первой?

+0

То же самое, этот вопрос: http://stackoverflow.com/questions/2625220/why-do-i-see-ms-jquery-samples-use-domready? –

+2

Дубликат http://stackoverflow.com/questions/2384204/is-there-a-difference-between-ready-and-document-ready – R0MANARMY

+0

Вы должны прочитать [этот вопрос] (http://stackoverflow.com/q/10753306/601179) – gdoron

ответ

9

Последний вариант - это короткая версия готового обработчика.

The:

$(function(){ 

}) 

короткая версия этого:

$(document).ready(function(){ 

} 

Оба делают то же самое, и одна задача.

JQuery делает для хорошей сделки с лозунгом:

'Код меньше, делать больше'

+0

Серьезно? Не имел представления. – dclowd9901

+0

@ dclowd9901: Я тоже не знал о вас. ОП определенно нужно было знать об этом. – Sarfraz

3

От docs:

Все три следующих синтаксисов являются эквивалент:

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

Существует также $ (document) .bind («ready», обработчик). Это ведет себя так же, как и готовый метод , но за одним исключением: если готовое событие уже запущено, а вы попробуйте .bind («ready»), обработчик связанного не будет выполнен.

Метода .ready() может быть вызван только на объекте JQuery, соответствующем текущий документ , поэтому селектор может быть опущен.

НТН

Смежные вопросы