javascript时间差插件

Html如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <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;
}

结果如图:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值