为了账号安全,请及时绑定邮箱和手机立即绑定

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

<!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 回答

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

3 回复 有任何疑惑可以回复我~
#1

Just90 提问者

哦哦,对。当时怎么就没想到呢!谢谢!
2016-02-04 回复 有任何疑惑可以回复我~
#2

myt0929 回复 Just90 提问者

不谢!共同进步。
2016-02-04 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~
#1

Just90 提问者

num += 1; 等价于 num = num + 1;
2016-02-26 回复 有任何疑惑可以回复我~
#2

烜烜

等价于num++不?
2016-03-21 回复 有任何疑惑可以回复我~
#3

从此浪迹天涯了无牵挂 回复 烜烜

试了一下,可以。但是只能写num++;不能写num=num++,如果这样写的话,num=num同时num=num+1.前后矛盾,程序就没法走了,最后跑出来只有0之后没了
2016-03-23 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       467192    人
  • 解答问题       21875    个

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

进入课程

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

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信