JS、jquery实现几分钟前、几小时前、几天前等时间差显示效果的代码实例

  次阅读 来源:互联网(转载协议) 2016-01-26 10:49 我要评论(0)

在新浪微博首页看到每条微博后边显示的时间并不是标准的年-月-日格式,而是经过换算的时间差,如:发表于5分钟前、发表于 2小时前 ,比起标准的时间显示格式,貌似更加直观和人性化

要实现类似功能,用JS就可以,实现方法如下:

一、javascript函数实现:

实例1:

代码如下:

//JavaScript函数:

var minute = 1000 * 60;

var hour = minute * 60;

var day = hour * 24;

var halfamonth = day * 15;

var month = day * 30;

function getDateDiff(dateTimeStamp){

var now = new Date().getTime();

var diffValue = now - dateTimeStamp;

if(diffValue < 0){

//若日期不符则弹出窗口告之

//alert("结束日期不能小于开始日期!");

}

var monthC =diffValue/month;

var weekC =diffValue/(7*day);

var dayC =diffValue/day;

var hourC =diffValue/hour;

var minC =diffValue/minute;

if(monthC>=1){

result="发表于" + parseInt(monthC) + "个月前";

}

else if(weekC>=1){

result="发表于" + parseInt(weekC) + "周前";

}

else if(dayC>=1){

result="发表于"+ parseInt(dayC) +"天前";

}

else if(hourC>=1){

result="发表于"+ parseInt(hourC) +"个小时前";

}

else if(minC>=1){

result="发表于"+ parseInt(minC) +"分钟前";

}else

result="刚刚发表";

return result;

}

若你得到的时间格式不是时间戳,可以使用下面的JavaScript函数把字符串转换为时间戳, 本函数的功能相当于JS版的strtotime:

代码如下:

//js函数代码:字符串转换为时间戳

function getDateTimeStamp(dateStr){

return Date.parse(dateStr.replace(/-/gi,"/"));

}

实例2:

代码如下:

<script>

function jsDateDiff(publishTime){

var d_minutes,d_hours,d_days;

var timeNow = parseInt(new Date().getTime()/1000);

var d;

d = timeNow - publishTime;

d_days = parseInt(d/86400);

d_hours = parseInt(d/3600);

d_minutes = parseInt(d/60);

本站部分文章来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

    品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

  • 第一批国家重点研发计划公布,旷视科技开启“五年行动”

    第一批国家重点研发计划公布,旷视科技开启“五年行动”

  • 让AI触手可及  Qualcomm携手创通联达推出全新终端侧AI开发套件

    让AI触手可及 Qualcomm携手创通联达推出全新终端侧AI开发套件

  • 长虹新款智能语音空调,告诉你空调也能玩Siri

    长虹新款智能语音空调,告诉你空调也能玩Siri

网友点评网友点评
阅读推荐阅读推荐

据外媒报道,STEER打造了首款完全自动驾驶停车技术,旨在使常规车辆转变为无人驾驶车辆。STEER的首款技术应用是4级自动驾驶及网络安全停车...

近日,美国软性机器抓手制造商 Soft Robotics 宣布,获得 2000 万美元的融资,本轮投资者包括 Scale Venture Partners,Calibrate Ventures...

据外媒报道,加州车管局发布了《2017自动驾驶脱离报告(California Autonomous Vehicle Disengagement Reports)》,其中谈及了脱离的具体...

用人机语音交互,来解决智能家居适老的问题;通过家庭门禁与安防套件、空气净化套件、可燃气体与有害气体监控套件等相互联动,在不同生活情...