Как я могу создать 5 секундный таймер обратного отсчета с jquery, который заканчивается всплывающим окном входа в систему? - PullRequest
29 голосов
/ 22 июня 2010

Как создать таймер jquery, который запускается, когда ссылка «перебрана с помощью мыши», отображает 1, 2, 3, 4 и 5 один за другим.Затем на 5 всплывает окно входа в систему?

Приветствия.

Ответы [ 3 ]

54 голосов
/ 22 июня 2010

Как насчет:

var counter = 0;
var interval = setInterval(function() {
    counter++;
    // Display 'counter' wherever you want to display it.
    if (counter == 5) {
        // Display a login box
        clearInterval(interval);
    }
}, 1000);
19 голосов
/ 12 декабря 2013

Это именно тот код, который работал для меня:

<p>You'll be automatically redirected in <span id="count">10</span> seconds...</p>

<script type="text/javascript">

window.onload = function(){

(function(){
  var counter = 10;

  setInterval(function() {
    counter--;
    if (counter >= 0) {
      span = document.getElementById("count");
      span.innerHTML = counter;
    }
    // Display 'counter' wherever you want to display it.
    if (counter === 0) {
    //    alert('this is where it happens');
        clearInterval(counter);
    }

  }, 1000);

})();

}

</script>

<meta http-equiv="refresh" content="10;url=http://www.example.com" />

Надеюсь, это поможет;)

14 голосов
/ 22 января 2015

http://jsfiddle.net/brynner/Lhm1ydvs/

HTML

<span class="c" id="5"></span>

JS

function c(){
    var n=$('.c').attr('id');
    var c=n;
    $('.c').text(c);
    setInterval(function(){
        c--;
        if(c>=0){
            $('.c').text(c);
        }
        if(c==0){
            $('.c').text(n);
        }
    },1000);
}

// Start
c();

// Loop
setInterval(function(){
    c();
},5000);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...