我在JSFiddle找到了this JS-Countdown Script。
编辑:
我现在正在使用rafaelcastrocouto
的代码,这几乎是完美的。我想要一个10秒的JQuery倒计时脚本,其间隔时间间隔会在5秒后重置倒计时器,然后一次又一次地重复开始,但对于具有特定 id的特定课程,只需 在整个HTML页面上。如果它下降到0,倒计时应该停止。另外,我想将特定计数器重置为10。
关于每秒刷新一次的WebSocket,根据我为特定计数器获取的数据,我想重置它们,或者它们应该倒数到零。
答案 0 :(得分:2)
这是我用jquery和原生 setInterval 解决的方法......
var setup = function(){
$('.count').each(eachSetup);
};
var eachSetup = function(){
var count = $(this);
var sec = count.data('seconds') ;
count.data('count', sec);
};
var everySecond = function(){
$('.count').each(eachCount);
};
var eachCount = function(){
var count = $(this);
var s = count.data('count');
count.text(s);
s--;
if(s < 0) {
s = count.data('seconds');
}
count.data('count', s);
};
setup();
setInterval(everySecond, 1000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<p class="count" data-seconds="5"></p>
<p class="count" data-seconds="10"></p>
<p class="count" data-seconds="15"></p>
答案 1 :(得分:0)
您在代码中遇到严重错误,例如
setTimeout(cd_go(id), 1000);
- 应该指向函数引用而不是函数执行。 setTimeout还返回超时 id 。您必须经过id
到clearTimeout
clearTimeout(this);
如果您使用严格模式
loop = setInterval(function(id) { … }
- id 指向未完成,因为您没有为其传递任何值