javascript - 为什么我的 JavaScript 第二个计数器不起作用?
问题描述
我用 JavaScript 做了第二个计数器。但是我的代码不起作用。
我的问题:“首先我按下了开始按钮,但秒没有正常进行。”
这是我的代码:
var a = 0;
var Time = setInterval(Counter, 1000);
function startCounter() {
setInterval(Counter, 1000);
}
function Counter() {
a += 1;
seconds.innerHTML = a;
}
function pauseCounter() {
clearInterval(Time);
}
function resetCounter() {
a = 0;
seconds.innerHTML = a;
}
<button onclick="startCounter()">Start</button>
<br>
<button onclick="pauseCounter()">Pause</button>
<p>Seconds: <a id='seconds'>0</a></p>
<button onclick="resetCounter()">Reset</button>
解决方案
您的代码中的问题是以下行:
setInterval(Counter, 1000);
在上面的行中,您正在创建一个间隔,但您没有将它分配给任何变量。所以它没有被取消。
在开始新的间隔之前,请确保清除最后一个间隔。
您需要将新分配setInterval
给Time
每次
var a = 0;
var Time;
function startCounter() {
clearInterval(Time)
Time = setInterval(Counter, 1000);
}
function Counter() {
a += 1;
seconds.innerHTML = a;
}
function pauseCounter() {
clearInterval(Time);
}
function resetCounter() {
a = 0;
seconds.innerHTML = a;
}
<button onclick="startCounter()">Start</button>
<br>
<button onclick="pauseCounter()">Pause</button>
<p>Seconds: <a id='seconds'>0</a></p>
<button onclick="resetCounter()">Reset</button>
推荐阅读
- python - 关于 Python 文件处理中的 close 方法的说明
- javascript - 为关闭模态窗口启用向下滑动动画
- c# - 使用 chilkat 验证从 FTP 下载的非常大的 .zip 文件 (~12 GB)
- python-3.x - python-3.x中for循环上的多核并行计算
- android - 除非滚动到第三个选项卡,否则 Textview 不会在第一个选项卡上更新
- android - 关闭 dialogFragment 时键盘未关闭
- javascript - 如何使用正则表达式创建路由并在nodejs中重定向
- javascript - 如何使用循环使代码在javascript中的特定条件下操作字符串?
- mysql - 如何仅使用一个查询从多个表中获取数据?
- javascript - 不使用 eval() 计算字符串