javascript时间差插件分享


javascript时间差插件分享,供大家参考,具体内容如下

Html如下: 

<html>
  <head>
    <title></title>
    <script src="js/TimeDifference.js" type="text/javascript"></script>
    <script src="js/jquery-1.10.2-min.js" type="text/javascript"></script>
  </head>
  <body>
    <h2>该插件发布时间:<small id="allDemo"></small> </h2>
    <script type="text/javascript">
      $("#allDemo").text(timeDifference("2016-06-05 10:11:00"));
    </script>
    
    <font color="red" id="demo1Font">2016-06-03 10:20:23 </font><br>

    距离目前时间差:
    <strong><font color="red"><span id="timeDifferenceDemo1"></span></font></strong><br>
    
    <font color="red" id="demo2Font">2016-06-07 10:02:23 </font><br>
    距离目前时间差:
    <strong><font color="red"><span id="timeDifferenceDemo2"></span></font></strong>
  </body>
  
  <script type="text/javascript">
  $(document).ready(function(){
    //2016-5-3 10:20:23
    var demo1Result=timeDifference($("#demo1Font").text());
    $("#timeDifferenceDemo1").text(demo1Result);

    $("#timeDifferenceDemo2").text(timeDifference($("#demo2Font").text()));
  });
  </script>
</html>

 TimeDifference.js代码如下:

/**
 * 函数使用说明:
 *   1、直接调用函数 TimeDifference()
 *     返回说明: 返回距离当前的时间差
 * */
function timeDifference(tmpTime) {
  var mm=1000;//1000毫秒 代表1秒
  var minute = mm * 60;
  var hour = minute * 60;
  var day = hour * 24;
  var month = day * 30;
  var ansTimeDifference=0;//记录时间差
  var tmpTimeStamp = tmpTime ? Date.parse(tmpTime.replace(/-/gi, "/")) : new Date().getTime();//将 yyyy-mm-dd H:m:s 进行正则匹配
  var nowTime = new Date().getTime();//获取当前时间戳
  var tmpTimeDifference = nowTime - tmpTimeStamp;//计算当前与需要计算的时间的时间戳的差值
  if (tmpTimeDifference < 0) {        //时间超出,不能计算
    alert("开始日期大于结束日期,计算失败!");
    return 0;
  }
  /**
   * 通过最开始强调的各个时间段用毫秒表示的数值,进行时间上的取整,为0的话,则没有到达
   * */
  var DifferebceMonth = tmpTimeDifference / month;  //进行月份取整
  var DifferebceWeek = tmpTimeDifference / (7 * day);//进行周取整
  var DifferebceDay = tmpTimeDifference / day;//进行天取整
  var DifferebceHour = tmpTimeDifference / hour;//进行小时取整
  var DifferebceMinute = tmpTimeDifference / minute;//进行分钟取整
  if (DifferebceMonth >= 1) {
    return tmpTime;         //大于一个月 直接返回时间
  } else if (DifferebceWeek >= 1) {
    ansTimeDifference= parseInt(DifferebceWeek) + "个星期前";
  } else if (DifferebceDay >= 1) {
    ansTimeDifference = parseInt(DifferebceDay) + "天前";
  } else if (DifferebceHour >= 1) {
    ansTimeDifference = parseInt(DifferebceHour) + "个小时前";
  } else if (DifferebceMinute >= 1) {
    ansTimeDifference = parseInt(DifferebceMinute) + "分钟前";
  } else {
    ansTimeDifference = "刚刚";
  }
  return ansTimeDifference;
}

 结果如图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持phpstudy。


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3