@prolina

Закрытие модального окна кликом мыши на любую область страницы, кроме самого модального окна?

Всем здравствуйте. В данный момент, при клике на любую область страницы, кроме модального окна(#pop-up), модальное окно закрывается, но при этом, если повторно хочешь, чтобы появилось модальное окно - оно не появляется. Как сделать, чтобы была возможно закрывать и снова открывать модальное окно несколько раз?
$(".item-box").click( function() {
   var id = $(this).attr("data-product"),
child = id-1;
$("#pop-up .gallery-cell").eq(child).show();
$("#pop-up").show();
$("#pop-up").css("z-index",3000000);
$("#all").css({"background-color":"rgba(0,0,0,0.6)", "z-index":15000}); 
     var $body = $(document.body),
         $popup = $("#pop-up");
 $body.on("mousedown", function () {
    $popup.remove();
    $("#all").css({"opacity":1,"background":"white"});
// клик по самому поп-апу не должен его закрывать
$popup.on("mousedown", function (e) {
    e.stopPropagation();      
    });
 });

$(".main-gallery").flickity({
        cellAlign: 'left',
        contain: true,
        freeScroll: true,
        wrapAround: true,
        pageDots: false
           
});
});
  • Вопрос задан
  • 555 просмотров
Решения вопроса 2
bingo347
@bingo347 Куратор тега JavaScript
Crazy on performance...
Вот этим $popup.remove(); Вы удаляете элемент из DOM, а нужно просто скрывать
если память не изменяет $popup.hide();
Ответ написан
Stalker_RED
@Stalker_RED
$body.on("mousedown", function (e) {
    if ($.contains($popup, e.target)) {
        e.stopPropagation();
    } else {
        $popup.remove();
        $("#all").css({"opacity":1,"background":"white"});
    }
 });
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
28 мар. 2024, в 21:25
2000 руб./за проект
28 мар. 2024, в 21:17
5000 руб./за проект
28 мар. 2024, в 20:46
150000 руб./за проект