@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()){}
  • Вопрос задан
  • 162 просмотра
Пригласить эксперта
Ответы на вопрос 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.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы