Timeago日期格式仅限于24小时前

时间:2014-06-20 11:56:56

标签: javascript jquery timeago

我想使用jquery Timeago插件作为日期格式。但是,当时间超过24小时,我希望它显示另一种格式。

我试图调整代码,但我的技能让我失望:/

修改

var itemDate = '2014-05-17T09:24:17Z';

if(itemDate > 'THAN 24 HOURS')
{
   $('body').append('<div>show normal date like 17.05.2014</div>');
}
else
{
   $('body').append('<time class="timeago" datetime="'+itemDate+'"></time> ');  
   $(".timeago").timeago();
}

1 个答案:

答案 0 :(得分:7)

您可以创建一个功能,检查日期是否早于24小时..可能是这样的:

function is_older_than_24hours(datetime) {
     var before = new Date(datetime),
         now = new Date();
     return ( ( now - before ) > ( 1000 * 60 * 60 * 24 )  ) ? true : false;
}

// Then you use your usual code

$(function(){

    var itemDate = '2014-05-17T09:24:17Z';

    if(is_older_than_24hours(itemDate)) {

        var d = new Date(itemDate),
            day = ( d.getDate() > 9 ) ? d.getDate() : '0' + d.getDate(),
            month = ( d.getMonth() > 8 ) ? d.getMonth() + 1 : '0' + (d.getMonth() + 1),
            year = d.getFullYear();
        $('<div/>', { text: month +'.'+ day +'.'+ year }).appendTo('body');

    } else {

        $('<time/>', { 'class': 'timeago', 'datetime': itemDate })
            .appendTo('body')
            .timeago();
    }

})