代码之家  ›  专栏  ›  技术社区  ›  Sazny14

java脚本倒计时计时器在页面刷新时重置

  •  1
  • Sazny14  · 技术社区  · 7 年前

    i used this

    var timer;
    var compareDate = new Date();
    compareDate.setDate(compareDate.getDate() + 16); //incresed by to date + (16 days)
    
    timer = setInterval(function() {
      timeBetweenDates(compareDate);
    }, 1000);
    
    function timeBetweenDates(toDate) {
      var dateEntered = toDate;
      var now = new Date();
      var difference = dateEntered.getTime() - now.getTime();
    
      if (difference <= 0) {
    
        // Timer done
        clearInterval(timer);
    
      } else {
    
        var seconds = Math.floor(difference / 1000);
        var minutes = Math.floor(seconds / 60);
        var hours = Math.floor(minutes / 60);
        var days = Math.floor(hours / 24);
    
        hours %= 24;
        minutes %= 60;
        seconds %= 60;
    
        $("#days").text(days);
        $("#hours").text(hours);
        $("#minutes").text(minutes);
        $("#seconds").text(seconds);
      }
    }
    body {
      background: #f5f5f5;
    }
    #timer {
      font-family: Arial, sans-serif;
      font-size: 20px;
      color: #999;
      letter-spacing: -1px;
    }
    #timer span {
      font-size: 60px;
      color: #333;
      margin: 0 3px 0 15px;
    }
    #timer span:first-child {
      margin-left: 0;
    }
      
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    
    
    <div id="timer">
      <span id="days"></span>days
      <span id="hours"></span>hours
      <span id="minutes"></span>minutes
      <span id="seconds"></span>seconds
    </div>
    2 回复  |  直到 7 年前
        1
  •  0
  •   Keith    7 年前

    如果您想使用localStorage,可以执行以下操作。 它基本上会在第一次运行时存储比较数据。。

    var timer;
    
    var savedDate = localStorage.getItem('savedDate');
    var compareDate = new Date();
    if (savedDate)  {
      compareDate = new Date(savedDate);
    } else { 
      compareDate.setDate(compareDate.getDate() + 16); //incresed by to date + (16 days)
      localStorage.setItem('savedDate', compareDate);
    }
    
    //...rest of code
    
        2
  •  0
  •   GarethAS    7 年前

    如果你不想改变结局,你应该添加一个固定的日期,比如:

    var compareDate = new Date(yyyy,MM,dd,hh,mm,ss);
    

    更改 yyyy MM 等。具有年、月、日、小时、分钟和秒的值,如以下示例所示:

    var compareDate = new Date(2017,09,10,12,00,00);
    

    N、 B。