问答详情
源自:8-6 取消计时器clearTimeout()

为什么在函数startCount()外面好要写 一句 setTimeout("startCount()",1000);

<!DOCTYPE HTML>

<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>


提问者:慕粉4296528 2016-12-08 20:21

个回答

  • Miss锦
    2016-12-08 21:41:33
    已采纳

    如果是慕课的练习的话,并不需要要那一句话,加了那一句话就会变成自动计时了,与题目要求不符,你可以测试一下加上那句话和不加那句话的不同效果。

    <!DOCTYPE HTML>

    <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);

      }

      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>


  • 亮爱北七
    2016-12-08 21:05:41

    因为只是函数定义,并没有调用函数。