mik*_*ike 5 javascript timer stopwatch jsfiddle
我找到了 JSFiddle
一个计时器,每秒计数一次.除了我希望这只与分钟和秒钟一起工作.没有时间.
有任何想法吗?
var handler = function() {
var date = new Date();
var sec = date.getSeconds();
var min = date.getMinutes();
document.getElementById("time").textContent = (min < 10 ? "0" + min : min) + ":" + (sec < 10 ? "0" + sec : sec);
};
setInterval(handler, 1000);
handler();
Run Code Online (Sandbox Code Playgroud)
<h1 id="time" style="text-align: center"></h1>
Run Code Online (Sandbox Code Playgroud)
这是一个非常hackish的方法 - http://jsfiddle.net/gPrwW/1/
HTML -
<div id="worked">31:14</div>
Run Code Online (Sandbox Code Playgroud)
JS:
$(document).ready(function (e) {
var $worked = $("#worked");
function update() {
var myTime = $worked.html();
var ss = myTime.split(":");
var dt = new Date();
dt.setHours(0);
dt.setMinutes(ss[0]);
dt.setSeconds(ss[1]);
var dt2 = new Date(dt.valueOf() + 1000);
var temp = dt2.toTimeString().split(" ");
var ts = temp[0].split(":");
$worked.html(ts[1]+":"+ts[2]);
setTimeout(update, 1000);
}
setTimeout(update, 1000);
});
Run Code Online (Sandbox Code Playgroud)
处理这种情况的确切方法如下:
示例代码:
var initialTime = Date.now();
function checkTime(){
var timeDifference = Date.now() - initialTime;
var formatted = convertTime(timeDifference);
document.getElementById('time').innerHTML = '' + formatted;
}
function convertTime(miliseconds) {
var totalSeconds = Math.floor(miliseconds/1000);
var minutes = Math.floor(totalSeconds/60);
var seconds = totalSeconds - minutes * 60;
return minutes + ':' + seconds;
}
window.setInterval(checkTime, 100);
Run Code Online (Sandbox Code Playgroud)
您可以轻松更改检查时间的粒度(目前设置为 0.1 秒)。这个计时器的优点是它在更新时永远不会不同步。
小智 3
您可以创建一个函数,每次调用时都会增加计数器,将值显示为:counter/60 分钟,counter%60 秒
然后你可以使用该setInterval
函数让 JavaScript 每秒调用你的代码。它不是非常精确,但对于简单的计时器来说已经足够了。
归档时间: |
|
查看次数: |
35472 次 |
最近记录: |