启用计时器和关闭计时器,关闭计时器时无效

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

Just90

2016-02-02 14:14

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

  }

*/

  var num=0;

  function startCount(){

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

    num+=1;

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

//上面未注释代码哪里错了,怎么无效呢?

写回答 关注

2回答

  • myt0929
    2016-02-02 14:46:14
    已采纳

    i 为局部变量 作用范围只在startCount()函数中 ,将i定义在函数的外边

    myt092... 回复Just90

    不谢!共同进步。

    2016-02-04 09:12:41

    共 2 条回复 >

  • OLYLYL
    2016-02-24 21:50:38

    你的num+=1是什么意思。。

    从此浪迹天涯... 回复烜烜

    试了一下,可以。但是只能写num++;不能写num=num++,如果这样写的话,num=num同时num=num+1.前后矛盾,程序就没法走了,最后跑出来只有0之后没了

    2016-03-23 02:27:54

    共 3 条回复 >

JavaScript进阶篇

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

467385 学习 · 21877 问题

查看课程

相似问题