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

startCount();为什么不行呢

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

  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>


正在回答

2 回答

页面元素还没加载 你就调用方法了···这样获取不到对应的元素

两个解决方法

1在外面加个方法 window.onload

window.onload = function(){
  var num=0;
  function startCount() {
    document.getElementById('aa').value=num;
    num=num+1;
    setTimeout(startCount,1000); 
  }
 startCount(); 
}

2 把js代码放到form 后面

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


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

qq_无猜_0 提问者

我看到很多同学是将我说的那句改成setTimeout("startCount()",1000); 就能通过,这样与startCount();不就是一秒钟的差别吗?顺序执行的话,这个为什么就能找到元素呢? 谢谢 麻烦了
2015-04-27 回复 有任何疑惑可以回复我~
#2

u5de6 回复 qq_无猜_0 提问者

延迟一秒,页面早就加载完毕
2015-04-29 回复 有任何疑惑可以回复我~
#3

qq_无猜_0 提问者

非常感谢!
2015-05-03 回复 有任何疑惑可以回复我~

xiexie

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

举报

0/150
提交
取消

startCount();为什么不行呢

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