谁来解释下这段JS代码,引起的现象。。

tian_xiao_kang 2012-03-20 04:46:04
做一个简单的页面计数器。 点击开始按钮,就开始计数,点击停止按钮就停止计数。

问题在这:当我点击一下开始按钮时,然后点击停止按钮能停下,可是当我连续点击多次开始按钮时,计数开始加速,并且停止按钮失效。

代码如下:
<html>
<body>
<div id="one" style="color:'blue'; font-size:8cm; text-align:'center';">
0
</div>
<script>
var dobj=document.getElementById("one");
var dt=null;
var i;
function start1(){
dt=setInterval(function(){
i=dobj.innerText;
i++;
dobj.innerText=i;
},200);
}
function stop(){
clearInterval(dt);

}

</script>
<input type="button" onclick="stop()" value="停止">
<input type="button" onclick="start1()" value="开始">
</body>
</html>
...全文
62 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
三石-gary 2012-03-20
  • 打赏
  • 举报
回复
function start1(){clearInterval(dt);
dt=setInterval(function(){
i=dobj.innerText;
i++;
dobj.innerText=i;
},200);
}
RainOnly 2012-03-20
  • 打赏
  • 举报
回复
那就先停一下呗. 在开始里如果 dt != null 就停一下计时器吧
黄袍披身 2012-03-20
  • 打赏
  • 举报
回复
点击开始后 开始按钮禁止再点击就是了

87,990

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧