js倒计时在移动端的应用

在移动端测试倒计时,将时间转化为毫秒会在苹果手机上出现NaN

  ```
  //在安卓上这样写可以获取到的
  var date = '2017-06-12 13:12:13';
  var time = new Date(date).getTime();
  //但在苹果手机上是不支持的,必须这样写:
  var time = new Date(date.replace(/-/g,'/')).getTime();
  //有时时间格式要有问题的情况下,要先用split进行切分处理。
  ```

  以下是实现代码
  ```
  var sh;
  function getStartTime(StartTime) {
      var t = Number(StartTime+172800000) - Date.now(); //时间差的毫秒数
      var d = 0,
          h = 0,
          m = 0,
          s = 0,
          ah = 0;
      if (t >= 0) {
          d = Math.floor(t / 1000 / 3600 / 24);
          h = Math.floor(t / 1000 / 60 / 60 % 24);
          m = Math.floor(t / 1000 / 60 % 60);
          s = Math.floor(t / 1000 % 60);
          ah = d*24+h;
          if (ah<10) {
            ah = '0'+ah;
          }
          if (m<10) {
            m = '0'+m;
          }
          if (s<10) {
            s = '0'+s;
          }
          return ''+ah+''+"小时"+''+m+''+"分钟"+''+s+''+"秒";
      }else{
        return "活动已经结束";
        clearInterval(sh);
      }
  } 
  sh=setInterval(setTimeInterval,1000);    
  function setTimeInterval(){
    var time = data.RargainU.createtime.split(".")[0].replace(/-/g,'/');
    var StartTime =  new Date(time).getTime();
    // 在页面中插入
    $(".time").html(getStartTime(StartTime));
  }
  setTimeInterval();
  ```

转载于:https://www.cnblogs.com/dxzg/p/8400406.html

你可能感兴趣的:(js倒计时在移动端的应用)