Я пытаюсь автоматически закрывать всплывающее окно каждый раз, когда открываю его. Но с приведенным ниже кодом всплывающее окно закрывается только в первый раз. Мне нужно обновлять браузер каждый раз, чтобы автоматически закрывать всплывающее окно. Пожалуйста, помогите мне написать код для автоматического закрытия всплывающего окна каждый раз. Заранее спасибо.

  var timeout = window.setTimeout(function(){ 
  //close the popup here
   $('.popup').stop().fadeOut('medium');
  }, 10000);
I tried close instead of stop, its not working. and the dialog is also not working
0
user3448925 12 Фев 2021 в 00:40

1 ответ

Лучший ответ

Чтобы автоматически закрывать всплывающее окно каждый раз, когда мы его запускаем, нам нужно вставить функцию fadeOut () в условие, которое определяет, отображается ли всплывающее окно или нет, как в этом примере:

if($('#popup').is(':visible')){
         var timeout = window.setTimeout(function(){
            $('#popupContact').stop().fadeOut('medium');
            $('#backgroundPopup').stop().fadeOut('medium');
        }, 5000);
}

Вместо этого это полный пример, и он работает:

$("#button").click(function() {
        $("#backgroundPopup").css({
            "opacity": "0.7"
        });
        $("#backgroundPopup").fadeIn("slow");
        $("#popup").fadeIn("slow");
        
         if($('#popup').is(':visible')){
         var timeout = window.setTimeout(function(){
            $('#popup').stop().fadeOut('medium');
            $('#backgroundPopup').stop().fadeOut('medium');
        }, 10000);
        }
 });
 
#backgroundPopup{
    display:none;
    position:fixed;
    height:100%;
    width:100%;
    top:0;
    left:0;
    background:#000000;
    border:1px solid #cecece;
    z-index:1;
}
#popup{
    display:none;
    position:fixed;
    height:384px;
    width:408px;
    background:#FFFFFF;
    border:2px solid #cecece;
    z-index:2;
    padding:12px;
    font-size:13px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<div id="button"><input type="submit" value="Press me please!" /></div> 
<div id="popup">  
    <p>
    SIMPLE POPUP
    </p> 
</div>  
<div id="backgroundPopup"></div>
1
Jackom 11 Фев 2021 в 22:35