@Urukhayy

Почему не срабатывает событие?

$(document).ready(function){
   LoadClasses(); // вызываем функцию, она создаст эелементы с  классами (class='images'), и поместит их в DOM дерево.

   $('.images').click(function(){ // кликаем по созданному вызовом функциии выше классу
      alert("Вы кликнули по картинке с классом 'images'"); // сообщение не отображается
   });

   $('.topic').click(function(){ // кликаем по классу, который прописан сразу в документе .html
      alert("Вы кликнули по картинке с классом 'topic'"); // сообщение успешно отображается
   });
}
  • Вопрос задан
  • 2186 просмотров
Решения вопроса 1
Вы сегодня издеваетесь? :) Третий вопрос об одном и том же..

$(document).on('click', '.images', function(){ // кликаем по созданному вызовом функциии выше классу
      alert("Вы кликнули по картинке с классом 'images'"); // сообщение не отображается
   });


Какая разница между jQuery .bind() .live() .delegate() и .on()?

А если объяснить коротко на пальцах, то все что вы пишете в $(..).click() вешается только в момент загрузки страницы, то есть что было из $('.images') то и подписали, а если добавляете динамически элементы на страницу, то и подписывать их на события нужно через $(document).on('событие', 'селектор', обработчик());
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
isqua
@isqua
Научу HTML, CSS, JS, BEM и Git
Вероятнее всего потому, что в HTML class="image", а события вы слушаете на $('.images') (лишняя s в конце).
Ответ написан
Ваш ответ на вопрос

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

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