如何将时间减少百分之几分秒
How do you decrement time for minutes seconds hundredths?
假设您想将计时器设置为所需的任何时间,该时间将以00:00:00分、秒和百分之一的形式显示。你会怎么做?请提供任何帮助,我们将不胜感激。
以下是JSFiddle中的链接:
https://jsfiddle.net/mxpuejvz/2/
function decrement(){
var time = 600;
var mins = parseInt((time / 100) / 60);
var secs = parseInt((time / 100) % 60);
var hundredths = parseInt(time % 100);
if(mins < 10) {
mins = "0" + mins;
}
if(secs < 10) {
secs = "0" + secs;
}
if(hundredths < 10) {
hundredths = "0" + hundredths;
}
document.getElementById("output").innerHTML = mins + ":" + secs + ":" + hundredths;
if (hundredths === 0){
if(time ===0){
clearInterval(countdownTimer);
document.getElementById("output").innerHTML = "Time's Up.";
}else{
time--;
}
var countdownTimer = setInterval('decrement()', 10)
}
}
}
似乎有三个问题需要注意。
- "时间"需要存储在屏幕更新功能之外,并在每次屏幕更新时递减或计算
- 使用CCD_ 1将数字转换为整数被一些人认为是一种黑客行为。CCD_ 2或整数计算可以是替代方案
- 定时器回拨不能保证准确准时:计算10毫秒的回拨次数不会得出所用时间的1/100
下面的代码是一个示例,说明了它如何工作,减去任何暂停按钮操作
var countdownTimer;
var endTime;
var counter = 0; // ** see reply item 3. **
function startCountDown( csecs) // hundredths of a second
{ endTime = Date.now() + 10*csecs; // endTime in millisecs
decrement();
countdownTimer = setInterval(decrement, 10);
counter = 0; // testing
}
function decrement()
{ var now, time, mins, secs, csecs, timeStr;
++ counter; // testing
now = Date.now();
if( now >= endTime)
{ time = 0;
timeStr = "Times up! counter = " + counter;
clearInterval( countdownTimer);
}
else
{ time = Math.floor( (endTime - now)/10); // unit = 1/100 sec
csecs = time%100;
time = (time-csecs)/100; // unit = 1 sec
secs = time % 60;
mins = (time-secs)/60; // unit = 60 secs
timeStr =
( (mins < 10) ? "0" + mins : mins) + ":" +
( (secs < 10) ? "0" + secs : secs) + ":" +
( (csecs < 10) ? "0" + csecs : csecs);
}
document.getElementById("output").innerHTML=timeStr;
}
startCountDown
的自变量给出了倒计时的1/100秒数。如果计数器结果与参数相同,请尝试交换浏览器选项卡,然后在倒计时期间再次交换。要测试的HTML:
<button type="button" onclick="startCountDown(600)">start</button>
<div id="output">
</div>
相关文章:
- 如何使用skip参数使用angular ui引导进行服务器端分页
- 如何通过引用var Using DataTables来进行分页或排序
- 操作员”;新的“;根据我想在几个JavaScript文件中使用的类,在JavaScript中使用
- 使用CSS或JavaScript计算分页符的数量
- DataTables-创建自定义分页样式(加载更多样式)
- 使用ajax的服务器端分页&jQuery
- 分页:如何用AJAX加载第一个页面
- dataTables-如何自定义分页类型以显示最后一个页码后面的省略号,
- 节点分叉子进程并获取它's错误
- 我将如何将Base的原型分配给User
- 将PHP变量分配给PHP数组
- 如何将样式分配给php语法
- 可以't将几个数字设置为<输入类型=“;数字“>
- 不带jquery的全屏分页
- 更改组合框分页后,getValue和getRawValue返回相同的值
- jQuery简单分页
- 使用jQuery在表中分页
- jQuery分页下一页和上一页按钮在点击零或超过最后一页后失败
- 在画布上显示字符串仅显示几分之一秒
- 如何将时间减少百分之几分秒