我有一些带有class = active
的单选按钮 <div id="radioset1">
<input type="radio" class="active" id="radio1" name="radio" />
<input type="radio" class="active" id="radio2" name="radio" />
<input type="radio" class="active" id="radio3" name="radio" />
</div>
<div id="counter_up">xy</div>
我想在div“counter_up”中添加一个计时器,以显示最后一次更改radiobutton的时间。
因此我添加了一些像这样的jquery代码:
$('.active').click(function() {
clearInterval(myInterval);
var counter = 0;
var myInterval = setInterval(function() {
++counter;
$('#counter_up').html('Aktiv seit ' + counter + ' Sekunden');
},1000);
});
我的代码正在运行,所以当我第一次单击其中一个单选按钮时,一切正常。
问题是,当我点击另一个单选按钮时,var计数器不会以0开头。
我尝试使用delete var和clearInterval,但它不起作用。 有人可以帮忙吗?
答案 0 :(得分:2)
您应该全局设置myInterval
并稍微重新构建代码,使其从0
计算:
var myInterval = null;
$('.active').click(function() {
clearInterval(myInterval);
var counter = 0;
var timer = function() {
$('#counter_up').html('Aktiv seit ' + (counter++) + ' Sekunden');
};
timer();
myInterval = setInterval(timer, 1000);
});