div文本未在javascript代码上更新
我用这个代码来计算从现在到下一个小时的第一分钟之间有多少秒。 关键是,如果remainingSeconds小于120秒,div文本不会改变。脚本已在文档中就绪,因为我只在页面加载时检查它。div文本未在javascript代码上更新,javascript,jquery,Javascript,Jquery,我用这个代码来计算从现在到下一个小时的第一分钟之间有多少秒。 关键是,如果remainingSeconds小于120秒,div文本不会改变。脚本已在文档中就绪,因为我只在页面加载时检查它。 我已经为此创建了一个。问题是,remainingSeconds在代码中永远不会低于60。这是一个更新版本,其中包括一个变通方法/解决方案 var now = new Date().getTime(); var remainingSeconds = (new Date(new Date(new Date(now
我已经为此创建了一个。问题是,
remainingSeconds
在代码中永远不会低于60
。这是一个更新版本,其中包括一个变通方法/解决方案
var now = new Date().getTime();
var remainingSeconds = (new Date(new Date(new Date(now + 3600000).setMinutes(1)).setSeconds(0)) - now) / 1000;
console.log(remainingSeconds);
if (remainingSeconds>=120) {
$('#countdown').text('120');
}else{
$('#countdown').text(remainingSeconds);
}
代码正在我的浏览器上运行。您是否遗漏了其他内容?为什么要检查它是否>=3600?以秒为单位。或者我错过了什么?因为您试图估计到下一个小时的第一分钟的剩余秒数(例如:08:01:00,格式:
hh:mm:ss
)。如果当前时间是08:00:20,我们将得到下一个小时(09:01:00)的剩余秒数。所以我们从结果中减去小时,如果它大于一小时,我明白了!谢谢,我没有注意到这个错误!谢谢你的指点!
$(document).ready(function(){
var now = new Date().getTime();
var remainingSeconds = (new Date(new Date(new Date(now + 3600000).setMinutes(1)).setSeconds(0)) - now) / 1000;
// --- Workaround-Begin ---
if ( remainingSeconds >= 3600 ) {
remainingSeconds -= 3600;
}
// --- Workaround-End ---
console.log(remainingSeconds);
if (remainingSeconds>=120) {
$('#countdown').text('120');
}else{
$('#countdown').text(remainingSeconds);
}
});