@sokolovwebd

Как реализовать всплытие картинки с оберткой?

5ddabcc9d6dc9928072537.png

$(".fadeimg").click(function () {
    var img = $(this); 
    var src = img.attr('src'); 
    $("body").append("<div class='popup'>" +
      "<div class='popup_bg'></div>" + 
      "<img src='" + src + "' class='popup_img' />" +
      "</div>");
    $(".popup").fadeIn(0); 
    $(".popup_bg").click(function () {
      $(".popup").fadeOut(0); 
      setTimeout(function () {
        $(".popup").remove(); 
      }, 0);
    });
    });


Скрипт срабатывает при нажатии на изображение. При добавлении обертки клик до изображения не доходит. Как нужно изменить код, либо как правильно создать обертку?
  • Вопрос задан
  • 146 просмотров
Решения вопроса 1
IceRD
@IceRD
Не нужно создавать бесконечное число событий по клику.
вынесите событие


$(".popup_bg").click(function () {
$(".popup").fadeOut(0);
setTimeout(function () {
$(".popup").remove();
}, 0);
});


и оберните его
$("html").on("click",".popup_bg", function (evt) {
   // ваш код
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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