为什么要设置两次setTimeout

来源:8-5 计时器setTimeout()

EricKok

2016-07-26 13:43

<script type="text/javascript">
  var num=0;
  function startCount() {
    document.getElementById('count').value=num;
    num=num+1;
    setTimeout("startCount()",1000);
  }
  setTimeout("startCount()",1000);
</script>

写回答 关注

3回答

  • 水里有条鱼
    2016-07-26 14:20:27
    已采纳

    制造一个死循环,就像香港电影绑匪勒索赎金的桥段,他叫你到地点A放下钱,但当你到了A之后,他又叫你到B,当你到了B之后,他又叫你到C,如此循环,那么就不会停止了,num就会一直往上加。

    EricKo...

    非常感谢!

    2016-07-26 14:26:26

    共 1 条回复 >

  • 柚子3737754
    2016-08-04 14:45:21

    试过了。setTimeout("startCount()",1000);换成startCount();的话,情况①:<script>放在<head>里面,没有反应;情况②:<script>放在<input>后面就可以运行了

  • l_yanlei
    2016-07-28 14:58:59

    我觉得楼上说的不对啊。

    第二个setTimeout(),其实是用来启动函数的。

    加入你不写这一句,那你可以在body里补充一个按钮,点击按钮,启动函数,也是一样的效果。

    明明的明天1... 回复wangzh...

    html是从上到下执行的,当你把startCount函数写在<head>里面时,下面的body内容还没有加载完,这时去执行startCount()函数里面的document.getElementById('count').value=num;这句代码是不能识别到id=count的元素的

    2018-11-20 21:50:25

    共 5 条回复 >

JavaScript进阶篇

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

468192 学习 · 21891 问题

查看课程

相似问题