Javascript 将计时器从var=1200更改为显示标题所在的mm:ss
我正在开发一个循环计时器,其中的代码与svg图形相关。 我目前有以下js代码。这显示计时器从-1200向上计数到0,但不显示“-”,因此看起来像是倒计时。请有人告诉我一种使用相同代码的方法,但要让它从20分钟开始计数,这样看起来就像是一个数字时钟Javascript 将计时器从var=1200更改为显示标题所在的mm:ss,javascript,svg,timer,Javascript,Svg,Timer,我正在开发一个循环计时器,其中的代码与svg图形相关。 我目前有以下js代码。这显示计时器从-1200向上计数到0,但不显示“-”,因此看起来像是倒计时。请有人告诉我一种使用相同代码的方法,但要让它从20分钟开始计数,这样看起来就像是一个数字时钟 var seconds = 1200; /* how long the timer runs for */ var initialOffset = '440'; var i = -1200; var interval = setInterval(
var seconds = 1200; /* how long the timer runs for */
var initialOffset = '440';
var i = -1200;
var interval = setInterval(
function() {
$('.circle_animation').css('stroke-dashoffset', initialOffset-(i*(initialOffset/seconds)));
$('h2').text(Math.abs(i));
if (i == 0) {
clearInterval(interval);
}
i++;
}, 1000);
您正在使用Math.abs(),它将返回正数。abs(-1200)将导致1200
您可以在值前面加上负号(-),如下所示
$('h2').text("-" + Math.abs(i));
给定
i
秒,您可以使用以下方法将其转换为分/秒:
var secs = Math.abs(i); // convert your negative count to positive
var m = Math.floor(secs/60);
var s = i%60;
要将它们显示为时钟,您需要填充第二个值,以确保它始终是两位数(即,“09”而不是“9”):
var clock=m+”:“+(这不是我真正想要的tbh mate。我想要一种方法将计时器从1200秒转换为20分零秒,而不必更改整个代码集,如果可能的话?
var clock = m+":"+(s<10?"0":"")+s;