Chinaunix首页 | 论坛 | 博客
  • 博客访问: 358104
  • 博文数量: 284
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1707
  • 用 户 组: 普通用户
  • 注册时间: 2014-05-14 16:38
文章分类

全部博文(284)

文章存档

2015年(6)

2014年(278)

我的朋友

分类: JavaScript

2014-07-25 14:30:59

我们经常在社交网络上面看到很人性化的时间提示比如,你的朋友几分钟前更新了什么,你的朋友几天前更新了什么信息.

这些小tips比直接显示某年某月人性化很多.我们可以用不同的程序实现这种效果.下面我是通过前台javascript来实现这种效果.

这样可以减少后台服务器的压力.

javascript实现代码如下......
1. [代码][JavaScript]代码
// 本函数实现了更人性化的时间提示 
// @param date_str 传递过来的时间,时间格式如:2010-12-14 18:36:09
function date_parser_diff_return(date_str){
    var  date=new Date();
    if(typeof(date_str)!='string')return date;
    var date_arr=date_str.split(new RegExp("[:| |-]","ig"));
    var date_obj = new Date(date_arr[0],date_arr[1]-1,date_arr[2],date_arr[3],date_arr[4],date_arr[5]);
    var date_seconddiff=( new Date().getTime()-date_obj.getTime() ) /1000 ;
        date_str_w='';
        if(date_seconddiff <60*30)date_str_w= Math.ceil(date_seconddiff/60)+"分钟前 ";
        if(!date_str_w && date_seconddiff <3600)date_str_w= "1小时前 ";
        if(!date_str_w && date_seconddiff <3600*2)date_str_w= "2小时前 ";
        if(!date_str_w && date_seconddiff <3600*3)date_str_w= "3小时前 ";
        if(!date_str_w && date.getFullYear()==date_arr[0] && date.getMonth()==date_arr[1]-1 && date.getDate()==date_arr[2])
                date_str_w= "今天 "+date_arr[3]+':'+date_arr[4];
        if(!date_str_w && date.getFullYear()==date_arr[0] && date.getMonth()==date_arr[1]-1 && date.getDate()-1==date_arr[2])
                date_str_w= "昨天 "+date_arr[3]+':'+date_arr[4];
        if(!date_str_w && date.getFullYear()==date_arr[0] && date.getMonth()==date_arr[1]-1 && date.getDate()-2==date_arr[2])
                date_str_w= "前天 "+date_arr[3]+':'+date_arr[4];
        if(!date_str_w && date.getFullYear()==date_arr[0] && date.getMonth()==date_arr[1]-1 ) 
                date_str_w= (date.getMonth()+1)+"月"+  date_arr[2]+"号 "+date_arr[3]+':'+date_arr[4];
        if(!date_str_w && date.getFullYear()==date_arr[0]) 
               date_str_w= "今年 " + date_arr[1]+"月"+  date_arr[2]+"号 "+date_arr[3]+':'+date_arr[4];
        if(!date_str_w && date.getFullYear()-1==date_arr[0]) 
               date_str_w= "去年 " + date_arr[1]+"月"+  date_arr[2]+"号 "+date_arr[3]+':'+date_arr[4];
        document.write(date_str_w);
};

阅读(554) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~