В официальной документации по библиотеке jQuery написано, что все три нижеперечисленные конструкции эквивалентны:
$(document).ready(handler)
$().ready(handler) (this is not recommended)
$(handler)
Но вот во второй строчке есть приписка "this is not recommended". Стало интересно почему же?Оказалось, хитрость закопана в истории версий jQuery: В версиях до 1.4 конструкция
$() была ссылкой на конструкцию $(document). Поэтому, данный код воспринимался нормально.Но масса людей начала делать столь безумные вещи как например:
$().mouseover() А для того, чтобы получить пустой объект jQuery приходилось делать следующую манипуляцию: $([]).Поэтому начиная с версии 1.4 конструкция $() вовзращает пустой объект jQuery. Но в версии 1.4 $().ready(fn) оставлена для совместимости. Лучшей практикой по мнению разработчиков библиотеки является использование конструкции: $(document).ready(fn)
Комментариев нет:
Отправить комментарий