Задать вопрос
@unfapable

В чем разница в привязке событий в jQuery?

Есть ли какая-нибудь разница между разными способами привязки событий? В смысле эффективности, быстродействия, правильности?

$('.specific-ul li').on('click', function()){}
$(''.specific-ul').on('click', 'li', function()){}
$(document).on('click', ''.specific-ul li', function()){} или $('body').on('click', ''.specific-ul li', function()){}
  • Вопрос задан
  • 163 просмотра
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
@kirill-93
$('.specific-ul li').on('click', function()){} находит элементы на момент инициализации, элементы, добавленные динамически, таким обработчиком обрабатываться не будут, в отличие от $(''.specific-ul').on('click', 'li', function()){}.
Первый, соответственно, быстрее.
$(document).on('click', ''.specific-ul li', function()){} или $('body').on('click', ''.specific-ul li', function()){}

$('body') не совсем корректно, если вы ищете в глобальной области. body может и не быть, а document - есть всегда.
Поэтому, если вам нужно делать выборку из всего документа, то лучше использовать document.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы