Maison  >  Questions et réponses  >  le corps du texte

javascript - Utilisez js pour écrire une pop-up basée sur une heure fixe, pop-up trois fois

Utilisez js pour écrire une interprétation, par exemple : pour un calque, la première fois qu'il apparaît après 10 secondes, après sa fermeture, il réapparaît après 20 secondes, et après sa fermeture, il réapparaît après 40 secondes secondes. Ensuite, il n'apparaît pas.

var firstShow = 10000;
var secondShow = 20000;
var threeShow = 400000;

setTimeout(openMpM, firstShow);
function openMpM() {
    $("#swtCenter2").fadeIn(1000);
}

var clearAfter = setTimeout(openMpM, secondShow);
var clearAfter1 = setTimeout(openMpM, threeShow);

function closeM() {
    $("#swtCenter2").fadeOut(1000);
    setTimeout(openMpM, 50000);
}

Je n'en ai aucune idée. Comment puis-je lui faire arrêter de jouer après trois fois ? J'espère pouvoir l'écrire en détail.

迷茫迷茫2686 Il y a quelques jours793

répondre à tous(4)je répondrai

  • 迷茫

    迷茫2017-06-12 09:34:02

    Après la dernière exécution de la fenêtre contextuelle, effacez simplement le minuteur...

    répondre
    0
  • 代言

    代言2017-06-12 09:34:02

            function first(){
                alert('第一次');
                setTimeout(second,20000);
            }
            function second(){
                alert('第二次');
                setTimeout(third,40000);
            }
            function third(){
                alert('第三次')
            }
            setTimeout(first,10000);
    

    Je ne sais pas si c'est possible

            var firstShow=1000;
            var secondShow=5000;
            var threeShow=10000;
            var n=0;
            setTimeout(openMpM,1000);
            function openMpM() {
                $("#swtCenter2").fadeIn(1000);
                $("#swtCenter2").fadeOut(1000);
                n++;
                switch (n){
                    case 1:
                    setTimeout(openMpM,secondShow);
                        break;
                    case 2:
                    setTimeout(openMpM,threeShow);
                        break;    
                }
            }

    Afficher les conditions cachées, ajoutez-les vous-même

    répondre
    0
  • 迷茫

    迷茫2017-06-12 09:34:02

    <p id="box"></p>
        <button id="btn">hide</button>
        <script>
            var times = [2000, 4000, 6000];
            function State(times) {
                var self = this;
                this.times = times
                this.oBox = document.getElementById('box');
                this.btn = document.getElementById('btn');
                this.i = 0;
    
                this.btn.onclick = function() {
                    self.change()
                }
            }
            State.prototype.show = function() {
                var self = this;
                setTimeout(function() {
                    self.oBox.style.display = "block";
                }, this.times[this.i++])
            }
            State.prototype.change = function(time) {
                if(this.i == this.times.length) {
                    alert('没有数据了');
                    return;
                }
                this.oBox.style.display = 'none';
                this.time = time
                this.show();
            }
            var s = new State(times);
            s.show();
        </script>

    Veuillez vous référer à ceci, lors de la fermeture, vous devez cliquer pour fermer manuellement

    répondre
    0
  • PHP中文网

    PHP中文网2017-06-12 09:34:02

    Je l'ai simplement implémenté, je ne sais pas s'il répond à vos besoins

    var timer,num=4;
    $('关闭').on('click',function(){
      $("#swtCenter2").fadeOut();
      clearInterval(timer);
      alertTime();
    });
    
    function alertTime(){
      num--;
      if(num<=0){
       clearInterval(timer);
       return false;
      }
      timer=setInterval(function(){
        $("#swtCenter2").fadeIn();
      },10000);
    }
    alertTime();

    Je me suis trompé d'heure, je l'ai un peu modifiée, ça devrait être comme ça

    var timer,num=-1;
    $('关闭').on('click',function(){
      $("#swtCenter2").fadeOut(0);
      clearInterval(timer);
      alertTime();
    });
    
    function alertTime(){
      num++;
      var idx=num;
      idx=!idx?0.5:idx;
      if(num>2){
       clearInterval(timer);
       return false;
      }
      timer=setInterval(function(){
        $("#swtCenter2").fadeIn(0);
      },10000*2*idx);
    }
    alertTime();

    répondre
    0
  • Annulerrépondre