重置间隔计时器Don't工作!什么'It’他错了
Reset Interval Timer Don't Work! What's wrong?
我不想让脚本定时器和重置按钮。当我点击重置时,计时器将重新设置并再次运行。我是javascript新手,所以这对我来说很难。
这是我的html代码:
<div class="item html">
<h2>60</h2>
<svg width="160" height="160" xmlns="http://www.w3.org/2000/svg">
<g>
<title>Layer 1</title>
<circle id="circle" class="circle_animation" r="69.85699" cy="81" cx="81" stroke-width="8" stroke="#6fdb6f" fill="none"/>
</g>
</svg>
<button type="butoton" id="previous">
Reset
</button>
这是我的JS代码:
var time = 1;
var initialOffset = '440';
var i = 59;
var interval;
var timer = function() {
var interval = setInterval(function() {
$('h2').text(i);
if (i == time) {
clearInterval(interval);
return;
}
i--;
}, 1000);
};
$('#previous').click(function(){
//go back to previous slide and reset time
clearInterval(interval);
timer()
});
这是我的完整代码:JSFIDDLE
由于您已经在函数外定义了interval
,因此不需要在函数中创建新的var interval
。
只需移除timer
函数中的var
即可。检查Fiddle
var timer = function() {
interval = setInterval(function() {
$('h2').text(i);
if (i == time) {
clearInterval(interval);
return;
}
i--;
}, 1000);
};
另外,如果您希望计时器再次从60开始,您应该将新时间定义为i
。因为在timer
函数中,您正在递减i
的值
$(document).ready(function() {
timer()
});
$('#previous').click(function(){
//go back to previous slide and reset time
i=59
clearInterval(interval);
timer()
});
您在函数范围中重新定义interval
。因此,js会将其视为一个单独的变量,而不是重新使用先前范围/执行上下文中定义的变量。只需删除函数中的var
关键字。。。
var timer = function() {
interval = setInterval(function() {
$('h2').text(i);
if (i == time) {
clearInterval(interval);
return;
}
i--;
}, 1000);
};
您的代码中有两个错误。1.间隔定义两次。2.重置时忘记将时间重置为59
这是jsfiddlehttp://jsfiddle.net/wz32sy7y/609/
更新的JS代码为
var time = 1;
var initialOffset = '440';
var i = 59;
var interval;
var timer = function() {
interval = setInterval(function() {
$('h2').text(i);
if (i == time) {
clearInterval(interval);
return;
}
i--;
}, 1000);
};
$('#previous').click(function(){
//go back to previous slide and reset time
clearInterval(interval);
i=59;
timer()
});
相关文章:
- Ajax GET 请求的 URL 失败,但 hurl.it 相同 URL 的 GET 请求有效.什么给
- 什么'It’这是我能容纳的最大房间数
- 什么'It是声明对象的最佳方式
- 什么'It’对一行代码使用匿名函数的意义何在
- 什么'It’这个函数现在正在运行
- jQUERY下拉菜单不会,当我点击它时关闭,除非我的锚点中有一个#tag.it 保持下拉,否则当我点击时什么都不会发生
- 什么'It’这是显示元素的一部分但隐藏其余部分的好方法
- 什么'It’为什么要做一个没有结果的条件
- 什么'It’这是在网上写数学证明的最好方法
- 垃圾邮件中的javascript;什么'it’它想做什么
- 什么'It’我的石头剪刀坏了
- JQuery,找出什么'it’s visible and hide it
- 什么'It’这是正确的传播方式
- 什么'It’我的意思是:!函数
- 什么'It是声明字符串的最佳方式
- 我的For循环计时不正确,是什么'It’他错了
- 什么'It’绑定和调用的区别是什么
- 什么'It’我的语法错了
- 代码中的“it”是什么?
- 什么'It’调用函数时把()放在末尾是不对的