Javascript 超过24小时的时间域(计时器)
我有这个功能Javascript 超过24小时的时间域(计时器),javascript,Javascript,我有这个功能 function calculateTimes(firstDate, firstTime, secondDate, secondTime){ var fDate = firstDate+" "+firstTime; var sDate = secondDate+" "+secondTime; var firstDateFull = new Date(fDate); var secondDateFull = new Date(sDate);
function calculateTimes(firstDate, firstTime, secondDate, secondTime){
var fDate = firstDate+" "+firstTime;
var sDate = secondDate+" "+secondTime;
var firstDateFull = new Date(fDate);
var secondDateFull = new Date(sDate);
var diff = secondDateFull - firstDateFull;
var diffSeconds = diff / 1000;
var HH = Math.floor(diffSeconds / 3600);
var MM = Math.floor((diffSeconds % 3600) / 60);
var SS = "00";
var formatted = ((HH < 10) ? ("0" + HH) : HH) + ":" + ((MM < 10) ? ("0" + MM) : MM);
return formatted;
}
我的问题是,这是一个延迟字段,时间可能超过24小时。
有没有一种方法可以让时间字段在JavaScript中接受24小时以上的时间?我使用的数据库(第四维)可以接受24小时以上的时间,我想正是这种情况
因此,它需要能够显示-
26:34
。时间格式的运行时间,如秒表。如果我一切正常,您将使用
作为»timefield«。此输入类型旨在处理日时间,而不是时间跨度。这些daytime可以格式化为12小时或24小时格式,它们都描述了一天中的某个时间。类似于“35:54”的值是35小时54分钟的时间跨度,不能用于描述一天中的特定时间,因此此类值对于此类输入无效
如果需要输入这些值,当然可以使用一个
,或两个
,一个用于小时,一个用于分钟,如下所示:
<div id="time-span">
<input type="number" min="0" step="1" />:<input type="number" min="0" max="59" step="1" />
</div>
:
如果我一切正常,那么您将使用
作为»timefield«。此输入类型旨在处理日时间,而不是时间跨度。这些daytime可以格式化为12小时或24小时格式,它们都描述了一天中的某个时间。类似于“35:54”的值是35小时54分钟的时间跨度,不能用于描述一天中的特定时间,因此此类值对于此类输入无效
如果需要输入这些值,当然可以使用一个
,或两个
,一个用于小时,一个用于分钟,如下所示:
<div id="time-span">
<input type="number" min="0" step="1" />:<input type="number" min="0" max="59" step="1" />
</div>
:
对于此类内容,请使用moment.jsso的可能重复项,是否要显示“25h”或“1d 1h”…?另外,如果你真的理解了你在那里实现的算法,调整它应该不会太困难。是的,需要显示25小时up@deceze. 好吧,你理解得很好,想解释一下吗?DB可以使用时间格式27:03
,但不能使用JavaScript或HTML。我只是问一个简单的问题。对于这样的事情,请使用moment.js可能重复的So,您想显示“25h”还是“1d 1h”…?另外,如果你真的理解了你在那里实现的算法,调整它应该不会太困难。是的,需要显示25小时up@deceze. 好吧,你理解得很好,想解释一下吗?DB可以使用时间格式27:03
,但不能使用JavaScript或HTML。我只是问一个简单的问题。@morne欢迎你。只需提醒在下一个问题中始终发布所有相关代码;)@欢迎光临。只需提醒在下一个问题中始终发布所有相关代码;)