使用以下代码
function clock(){
/*var message = document.getElementById("timer");
message.innerHTML = "The time is " + Date();
*/
var msec = 00;
var sec = 00;
var min = 00;
msec += 1;
console.log(min + ":" + sec + ":" + msec);
if (msec == 60) {
sec += 1;
msec = 00;
console.log(min + ":" + sec + ":" + msec);
if (sec == 60) {
sec = 00;
min += 1;
console.log(min + ":" + sec + ":" + msec);
if (sec % 2 == 0) {
alert("Pair");
}
}
}
document.getElementById("timer").innerHTML = min + ":" + sec + ":" + msec;
}
我想要做的是一个简单的计时器,它从一个窗口加载开始,每个milisec它增加到60,然后重置为0并将秒加上1秒,当秒达到60时,变为0并将分钟增加1.分类就像秒表。
我似乎没有正确递增,但我不知道如何增加它。
我用setInterval
调用函数,我不知道它是否正确:
var timer = setInterval(clock(), 1000);
答案 0 :(得分:5)
您需要将函数引用传递给setInterval
,目前您传递clock()
的返回值undefined
,因此它没有任何影响。
此外,您需要在msec
函数旁边声明sec
,min
和clock()
个变量。
var timer = setInterval(clock, 1000);
var msec = 00;
var sec = 00;
var min = 00;
var timer = setInterval(clock, 1000);
var msec = 00;
var sec = 00;
var min = 00;
function clock() {
msec += 1;
if (msec == 60) {
sec += 1;
msec = 00;
if (sec == 60) {
sec = 00;
min += 1;
if (sec % 2 == 0) {
alert("Pair");
}
}
}
document.getElementById("timer").innerHTML = min + ":" + sec + ":" + msec;
}
<div id="timer"></div>