0
我试图计算DECIMALS中两个数字之间的差异。问题在于需要大约2-3个电码,这是一个问题,因为输入是时间,用户可以非常快速地触发事件,并且似乎以某种方式崩溃。 这可能来自不是小数点后的数字吗?昏迷后我只需要2位数字。延迟计算OnChange事件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Testing</title>
</head>
<body>
<input type="date" name="" id="">
<input type="time" step="300" name="" id="startTime" onkeydown="return false" />
<input type="time" step="300" name="" id="endTime" onkeydown="return false" />
<input type="text" id="totalHours">
</body>
<script>
document.querySelector("#startTime").onchange = function (e) {
}
document.querySelector("#endTime").onchange = function (e) {
timeDiff();
}
function timeDiff() {
var start = document.querySelector("#startTime").value;
var end = document.querySelector("#endTime").value;
var startSplit = start.split(":");
var startHsToMinutes = startSplit[0] * 60;
var startTotalMinutes = parseInt(startSplit[1]) + startHsToMinutes;
var endSplit = end.split(":");
var endHsToMinutes = (endSplit[0] * 60);
var endTotalMinutes = parseInt(endSplit[1]) + endHsToMinutes;
var totalHours = endTotalMinutes - startTotalMinutes;
document.querySelector("#totalHours").value = totalHours/60;
}
</script>
</html>
令人惊叹的解决方案。非常感谢你。你能解释一下这两者之间的区别吗? –
我在答案中加了一些解释。 – trincot