Не срабатывает обработчик Click на ссылку.
Добрый день!
Бодаюсь с такой проблемой. Вешаю на ссылку обработчик клика. <div id="bckgnd"> <div class="slides"> <div id="slide1" class="show_slide_left"> <a href="#"><img src="img/about1.png"></a> </div> </div> </div> linkObj = $('#bckgnd .slides div a'); linkObj.click(function(e){ e.preventDefault(); console.log("preventDefault"); return false; }); Обработчик не вызывается. Применяю другую запись селектора. linkObj = $('#bckgnd div div a'); linkObj.click(function(e){ e.preventDefault(); console.log("preventDefault"); return false; }); Так обработчик вызывается. Объект находится в обоих вариантах. Проверил в отладчике первый вариант. В переменной linkObj объект ссылки лежит с записанной ссылкой на обработчик, как и положено. Почему не вызывается обработчик в первом варианте? |
Цитата:
<!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script> $(function() { linkObj = $('#bckgnd .slides div a'); linkObj.click(function(e){ e.preventDefault(); console.log("preventDefault"); alert("preventDefault"); return false; }); }); </script> </head> <body> <div id="bckgnd"> <div class="slides"> <div id="slide1" class="show_slide_left"> <a href="#"><img src="https://www.mikehourigan.com/wp-content/uploads/2011/08/About-Mike-Hourigan.jpg"></a> </div> </div> </div> </body> </html> |
Работают оба варианта, проверил с https://cdnjs.cloudflare.com/ajax/li.../jquery.min.js
|
Разобрался. Забыл, что блоки из .clides динамически перемещаются в другой контейнер и туда уже вешается обработчик.
|
Часовой пояс GMT +3, время: 05:28. |