为什么没有点start他就自动运行了

来源:8-6 取消计时器clearTimeout()

心悦君兮君不知qaq

2016-11-20 09:48

<!DOCTYPE HTML>

<html>http://www.imooc.com/code/1026#editor-tabs-html

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>计时器</title>

</head>

<script type="text/javascript">

  var num=0;

  var i;

  function startCount(){

    document.getElementById('count').value=num;

    num=num+1;

    i=setTimeout("startCount()",1000);

  }

  setTimeout(startCount,1000)

  function stopCount(){

  clearTimeout(i);

  }

</script>

</head>

<body>

  <form>

    <input type="text" id="count" />

    <input type="button" value="Start" onclick="startCount()" />

    <input type="button" value="Stop" onclick="stopCount()"  />

  </form>

</body>

</html>


写回答 关注

1回答

  • 慕粉4287973
    2016-11-20 10:21:58
    已采纳

     把第十六行的setTimeout(startCount,1000)去掉就可以了。为了消除一直猛按start的时候数字飙升的bug,最好在startCount()函数中马上执行一次clearTimeout(i);

    心悦君兮君不...

    谢啦谢啦

    2016-11-20 10:33:15

    共 1 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468060 学习 · 21891 问题

查看课程

相似问题