Javascript 建筑时间倒计时
我试图建立一个时间倒计时,我发送一个以毫秒为单位的时间戳,每秒钟我将这个值减去当前时间,得到倒计时 我正在使用这个网站生成时间戳Javascript 建筑时间倒计时,javascript,Javascript,我试图建立一个时间倒计时,我发送一个以毫秒为单位的时间戳,每秒钟我将这个值减去当前时间,得到倒计时 我正在使用这个网站生成时间戳 https://www.epochconverter.com/ 但是当我选择时间戳日期为三天时,我的脚本只检查小时、分钟和秒,而忘记了日期、月份或年份 示例:当我选择此日期时-2017年4月11日20:00:00 我的脚本没有显示我的示例,它显示了到达时间戳需要多少小时,它显示了3个小时,这是不正确的 我的代码: var updateTime = setInterv
https://www.epochconverter.com/
但是当我选择时间戳日期为三天时,我的脚本只检查小时、分钟和秒,而忘记了日期、月份或年份
示例:当我选择此日期时-2017年4月11日20:00:00
我的脚本没有显示我的示例,它显示了到达时间戳需要多少小时,它显示了3个小时,这是不正确的
我的代码:
var updateTime = setInterval(function() {
var getEpochEnding = new Date(1492111767000);
var getTimeNow = new Date();
var timeZone = getTimeNow.getTimezoneOffset();
var ctdMillis = new Date(Math.abs(getEpochEnding - (getTimeNow - (timeZone * 60000))));
var ctdSeconds = parseInt((ctdMillis / 1000) % 60);
var ctdMinutes = parseInt((ctdMillis / (1000 * 60)) % 60);
var ctdHours = parseInt((ctdMillis / (1000 * 60 * 60)) % 24);
if ((getTimeNow - (timeZone * 60000)) > getEpochEnding) {
ctdSeconds = 0;
ctdMinutes = 0;
ctdHours = 0;
clearInterval(updateTime);
}
document.getElementById('countdown').innerHTML = ("0" + ctdHours).substr(-2) + ":" + ("0" + ctdMinutes).substr(-2) + ":" + ("0" + ctdSeconds).substr(-2);
}, 1000);
JsFiddle:
从ctdHours表达式中删除%24并在innerHTML表达式中更改ctdHours:
var updateTime = setInterval(function() {
var getEpochEnding = new Date(1492111767000);
var getTimeNow = new Date();
var timeZone = getTimeNow.getTimezoneOffset();
var ctdMillis = new Date(Math.abs(getEpochEnding - (getTimeNow - (timeZone * 60000))));
var ctdSeconds = parseInt((ctdMillis / 1000) % 60);
var ctdMinutes = parseInt((ctdMillis / (1000 * 60)) % 60);
var ctdHours = parseInt(ctdMillis / (1000 * 60 * 60));
if ((getTimeNow - (timeZone * 60000)) > getEpochEnding) {
ctdSeconds = 0;
ctdMinutes = 0;
ctdHours = 0;
clearInterval(updateTime);
}
document.getElementById('countdown').innerHTML = ctdHours + ":" + ("0" + ctdMinutes).substr(-2) + ":" + ("0" + ctdSeconds).substr(-2);
}, 1000);
尽管此解决方案在小时内不会显示前导零:1:23:45,而不是原来的01:23:45。从ctdHours表达式中删除%24并更改innerHTML表达式中的ctdHours:
var updateTime = setInterval(function() {
var getEpochEnding = new Date(1492111767000);
var getTimeNow = new Date();
var timeZone = getTimeNow.getTimezoneOffset();
var ctdMillis = new Date(Math.abs(getEpochEnding - (getTimeNow - (timeZone * 60000))));
var ctdSeconds = parseInt((ctdMillis / 1000) % 60);
var ctdMinutes = parseInt((ctdMillis / (1000 * 60)) % 60);
var ctdHours = parseInt(ctdMillis / (1000 * 60 * 60));
if ((getTimeNow - (timeZone * 60000)) > getEpochEnding) {
ctdSeconds = 0;
ctdMinutes = 0;
ctdHours = 0;
clearInterval(updateTime);
}
document.getElementById('countdown').innerHTML = ctdHours + ":" + ("0" + ctdMinutes).substr(-2) + ":" + ("0" + ctdSeconds).substr(-2);
}, 1000);
虽然这个解决方案不会显示小时数:1:23∶45,而不是原来的01:23∶45。< /P>,而不是自己编写这个逻辑,你可以考虑在VAR CTDHOLL=PARSETICTCTDMLIIS/1000×60×60% 24中使用Mangjjs,% 24意味着24除以后。因此,例如,75将被更改为3,而不是自己编写这个逻辑,您可以考虑使用Valjjs在行var CTdHeals= PARSETICTCDMILIS/1000×60×60% 24中,%24表示24除以后。例如,75将被更改为3。