我正在构建一些东西,其中之一是倒计时器,倒计时永远不会超过一个小时,所以我需要做的就是倒计时分钟和秒。
我已经部分工作了,但问题出在前导零上。我让它在几秒钟内工作,但不能在几分钟内工作。
看看我的例子http://jsfiddle.net/cgweb87/GHNtk/
JavaScript
setInterval(function() {
var timer = $('span').html();
timer = timer.split(':');
var minutes = timer[0];
var seconds = timer[1];
seconds -= 1;
if (minutes < 0) return;
if (minutes < 10 && length.minutes != 2) minutes = '0' + minutes;
if (seconds < 0 && minutes != 0) {
minutes -= 1;
seconds = 59;
}
else if (seconds < 10 && length.seconds != 2) seconds = '0' + seconds;
$('span').html(minutes + ':' + seconds);
}, 1000);
HTML
<span>10:10</span>
我想要发生的是倒计时器可以在 1 小时以内的任何地方开始,它将以前导零倒计时,即采用这种格式;
08:49
46:09
当到达倒计时时,只需显示:
00:00
感谢您的任何意见,我不想使用插件,我想学习它。
setInterval
返回您稍后可以使用的身份clearInterval
:
var interval = setInterval(function() {
/* snip */
$('span').html(minutes + ':' + seconds);
if (parseInt(minutes, 10) == 0 && parseInt(seconds, 10) == 0)
clearInterval(interval);
}, 1000);
而且,为了避免不断增加的分钟数——00000001:42
- 任何一个:
- change
length.minutes
to minutes.length
在你的前缀测试中。
- 检索时将值转换为 Numbers --
var minutes = parseInt(timer[0], 10);
——然后测试一下if (minutes < 10) ...
.
采用选项#2,更新如下:http://jsfiddle.net/BH8q9/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)