自己模拟器上看,是这样的
但是预览到手机的时候,发现就不是 5小时前,而是“刚刚”。
查了电脑的事区设置以及手机上的时区设置,都是一样的。有没有人碰到过。
自己debug了一下:
‘pubDate’: getDateDiff(new Date(item[‘pubDate’]).getTime()),
发现是getDateDiff这个函数引起的,如果没有用这个函数,两边的显示是一致的。各位大侠帮忙看下getDateDiff有啥问题,这个函数也是网上找的。
function getDateDiff(dateTimeStamp) {
var result;
var minute = 1000 * 60;
var hour = minute * 60;
var day = hour * 24;
var halfamonth = day * 15;
var month = day * 30;
var now = new Date().getTime();
var diffValue = now - dateTimeStamp;
if (diffValue < 0) {
return;
}
var monthC = diffValue / month;
var weekC = diffValue / (7 * day);
var dayC = diffValue / day;
var hourC = diffValue / hour;
var minC = diffValue / minute;
if (monthC >= 1) {
if (monthC <= 12)
result = “” + parseInt(monthC) + “月前”;
else {
result = “” + parseInt(monthC / 12) + “年前”;
}
}
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;
};