Задать вопрос
Grarnik
@Grarnik
web-мастер

Почему второй вариант работает, а первый нет?

Здравствуйте! С jQuey дело имею недавно. Столкнулся с такой проблемой: делал обработчик события при клике.
Вот такой:
$(document).ready(function(){
	$('.tags').click(function() {
		$('.tag').css('display', 'block');
	});
});

Но он никак не хотел работать. В итоге нашёл такое решение и оно оказалось рабочим.
$(document).on('click', '.tags', function() {
	$('.tag').css('display', 'block');
});


Так вот вопрос: почему первый вариант не работал, а второй работает?
  • Вопрос задан
  • 36 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
@kirill-93
Второй вариант отличается от первого тем, что обработчик вешается на все элементы с классом tags, даже те, которые будут созданы позже. Первый наоборот - только на те, которые уже есть.
Судя по всему, у вас эти элементы появляются динамически, после загрузки страницы, поэтому первый вариант не работает.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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