Grarnik
@Grarnik
web-мастер

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

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

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


Так вот вопрос: почему первый вариант не работал, а второй работает?
  • Вопрос задан
  • 35 просмотров
Решения вопроса 1
@kirill-93
Второй вариант отличается от первого тем, что обработчик вешается на все элементы с классом tags, даже те, которые будут созданы позже. Первый наоборот - только на те, которые уже есть.
Судя по всему, у вас эти элементы появляются динамически, после загрузки страницы, поэтому первый вариант не работает.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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