为什么下面的代码在Firefox下能正确运行而在Chrome下不能?如果我将.each循环中的返回值更改为“true”,则它可以在Chrome中正常工作,但在Firefox中不行。为什么会出现这种情况?当它不能正常工作时,它只返回秒数而不是正确的天、小时等。请帮忙检查一下。
function time_remaining(expire_time)
{
var now = new Date().getTime()/1000,
time_left = expire_time - now,
time_left_str = '0 seconds';
if (time_left < 1) {
return time_left_str;
}
var a = {};
a[ 12 * 30 * 24 * 60 * 60 ] = 'year',
a[ 30 * 24 * 60 * 60 ] = 'month',
a[ 24 * 60 * 60 ] = 'day',
a[ 60 * 60 ] = 'hour',
a[ 60 ] = 'minute',
a[ 1 ] = 'second';
$.each(a, function (secs, str) {
var d = time_left / secs;
if (d >= 1) {
var r = Math.round(d);
time_left_str = r + ' ' + str + ((r > 1) ? 's' : '');
return false;
}
});
return time_left_str;
}