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

计时器setTimeout()

<!DOCTYPE HTML>

<html>

<head>

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

<title>计时器</title>

<script type="text/javascript">

  var num=0;

  function startCount() {

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

    num=num+1;

    setTimeout("startCount()",1000);

  }

  startCount();  //调用函数,为什么没反应???

  

</script>

</head>

<body>

<form>

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

</form>

</body>

</html>


正在回答

3 回答

是因为你的页面还没有加载完就开始调用执行函数,把JS代码挪到下面就可以了

<!DOCTYPE HTML>

<html>

<head>

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

<title>计时器</title>

</head>

<body>

<form>

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

</form>

<script type="text/javascript">

  var num=0;

  function startCount() {

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

    num=num+1;

    setTimeout("startCount()",1000);

  }

  startCount();  //调用函数,为什么没反应???

</script>

</body>

</html>


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

木槿111 提问者

非常感谢!
2017-06-08 回复 有任何疑惑可以回复我~


<!DOCTYPE HTML>

<html>

<head>

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

<title>计时器</title>

<script type="text/javascript">

  var num=0;

  function startCount() {

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

    num=num+1;

    setTimeout("startCount()",1000);

  }

  startCount();  //调用函数,为什么没反应???

  

</script>

</head>

<body>

<form>

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

</form>

</body>

</html>

你定义的num要写在function()外面,不然运行都是零

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

var a = startCount();

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

木槿111 提问者

不行呀??
2017-06-02 回复 有任何疑惑可以回复我~
#2

HappyLei 回复 木槿111 提问者

我用你的例子改的执行了有效啊
2017-06-02 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

计时器setTimeout()

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