【发布时间】:2015-06-04 13:38:10
【问题描述】:
我试图在页面加载时显示两次之间的时间。 请检查下面我的代码 -
var start = document.getElementById("start").value;
var end = document.getElementById("end").value;
function hourDiff(start, end) {
start = start.split(":");
end = end.split(":");
var startDate = new Date(0, 0, 0, start[0], start[1], 0);
var endDate = new Date(0, 0, 0, end[0], end[1], 0);
var diff = endDate.getTime() - startDate.getTime();
var hours = Math.floor(diff / 1000 / 60 / 60);
diff -= hours * 1000 * 60 * 60;
var minutes = Math.floor(diff / 1000 / 60);
return (hours < 9 ? "0" : "") + hours + ":" + (minutes < 9 ? "0" : "") + minutes;
//setTimeout(function(){hourDiff(start, end)},500);
}
document.getElementById("diff").value = hourDiff(start, end);
<input id="start" value="20:00"> <!-- 08.00 PM -->
<input id="end" value="09:30"> <!-- 09.30 AM -->
<input id="diff">
我使用了开始时间 20.00 和结束时间 09.30 两者之间的差异是 = 13.30 小时,但它显示的时间错误。请检查并告诉我。
编辑:
我也想剩下多少hour:minute:second
【问题讨论】:
-
这是这个问题的正确标题吗?
-
这个问题没有 jQuery :D
-
也没有任何onclick事件
-
对不起,我写了另一个问题。错误标题未更改。
-
您创建两个日期相同但时间不同的
Date以及您想要的两个小时在不同日期的事实是否会导致问题?我猜他们会的
标签: javascript jquery