【发布时间】:2013-02-08 06:22:39
【问题描述】:
我有一个可以工作的倒数计时器,唯一的问题是我需要多次显示它,但我似乎无法让它为多个计数器工作。
工作代码:http://jsfiddle.net/3RpvJ/
我尝试制作更多的 div,例如 timer1 timer2 enz。但我似乎无法让它工作
window.onload = function() {
canvas = document.getElementById('timer'),
seconds = document.getElementById('counter'),
ctx = canvas.getContext('2d'),
sec = 180,
countdown = sec;
ctx.lineWidth = 8;
ctx.strokeStyle = "#528f20";
var
startAngle = 0,
time = 0,
intv = setInterval(function(){
var endAngle = (Math.PI * time * 2 / sec);
ctx.arc(65, 35, 30, startAngle , endAngle, false);
ctx.clearRect(0, 0, 200, 200);
startAngle = endAngle;
ctx.stroke();
countdown--;
if ( countdown > 60){
seconds.innerHTML = Math.floor(countdown/60);
seconds.innerHTML += ":" + countdown%60;
}
else{
seconds.innerHTML = countdown;
}
if (++time > sec,countdown == 0 )
{
clearInterval(intv),
$("#timer, #counter").remove(),
$("#timers").prepend('<img id="theImg" src="http://ivojonkers.com/votify/upvote.png" />');
}
}, 10);
}
【问题讨论】:
-
这是一个粗略的工作版本,但我可能会建议对其进行更封装:jsfiddle.net/3RpvJ/1