jQuery倒计时从某个时间开始

问题描述 投票:0回答:1

有谁知道如何设置一个特定时间的倒数计时器。到目前为止我有这个代码。但它从午夜到午夜倒计时。我想从早上11点到早上11点倒计时。

   <script>
      setInterval(function time() {
      var d = new Date();
      var hours = 24 - d.getHours();
      var min = 60 - d.getMinutes();
      if ((min + '').length == 1) {
      min = '0' + min;
      }
      var sec = 59 - d.getSeconds();
      if ((sec + '').length == 1) {
      sec = '0' + sec;
      }
      jQuery('#the-final-countdown p').html(hours + ':' + min + ':' +  sec)
      }, 1000);
    </script>
jquery countdown countdowntimer
1个回答
0
投票

在下面的代码中,您可以随时编写要倒计时的代码,JS代码可以完成工作。

这是DEMO

HTML

<input id="hr" placeholder="hr" type="text">
<input id="mn" placeholder="mn" type="text">
<input id="sc" placeholder="sc" type="text">
<button id="start">
  Start
</button>
<br>
<br>
<span id="timerhr"></span>:<span id="timermn"></span>:<span id="timersc"></span>

JS

$(document).ready(function(){
  var hr;
  var mn;
  var sc;
  var thr;
  var tmn;
  var tsc;
  $('#start').click(function(){
    hr = $('#hr').val();
    mn = $('#mn').val();
    sc = $('#sc').val();
    if(hr  == ""){
      hr = 0;
    }
    if(mn  == ""){
      mn = 0;
    }
    if(sc  == ""){
      sc = 0;
    }
    parseInt(hr);
    parseInt(mn);
    parseInt(sc);

    hr = hr*3600;
    mn = mn*60
    sc = hr + mn + sc;
    start(sc);
  });
});
function start(e){
  var interv = setInterval(function(){
  thr = e/3600;
  thr = Math.floor(thr);
  $('#timerhr').text(thr);
  tmn = (e%3600)/60;
  tmn = Math.floor(tmn);
  $('#timermn').text(tmn);
  tsc = e-(thr*3600+tmn*60);
  $('#timersc').text(tsc);
  e--;
  if(e < 0){
    clearInterval(interv);
  }
  },1000);
}
© www.soinside.com 2019 - 2024. All rights reserved.