Не удается получить .click () и подобные события, работающие должным образом

0

Я сильно застрял в самых простых материалах jQuery...

<div id="wrap">
  <div class="pic"><img /></div> 
  <div class="pic"><img /></div>
  ...
</div>

Я заполняю #wrap различными изображениями из данных JSON, однако я не могу получить клики, распознанные с помощью .pic

$(".pic").click(); $(".pic").on("click", function(){}); $(".pic > img").click(); $("img").click

Для тестирования я просто добавляю простые предупреждения к функции щелчка, и я пробовал различные комбинации без каких-либо успехов. Моя цель - подать идентификатор щелкнутого изображения обратно на мой JavaScript. Что я здесь делаю неправильно?

  • 0
    .on не выполняет .on делегирование событий, вы должны использовать правильный синтаксис делегирования событий. api.jquery.com/on
  • 0
    Можете ли вы собрать JSFiddle, чтобы мы могли видеть реальную проблему, с которой вы столкнулись ?
Показать ещё 1 комментарий
Теги:
click
events

2 ответа

2

попробуй это,

$(document).on('click', '.pic', function() {
    //do your stuff
});
1

Вам нужно установить дополнительный параметр для функции .on() чтобы получить ответ, если элементы добавляются динамически.

$(document).ready(function() {
  $("#wrap").on("click", ".pic", function(){
     // code
  });
});
  • 0
    ... и убедитесь, что это завернуто в $(document).ready или помещено в конец документа.
  • 0
    Спасибо, я отредактировал свой пост.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню