问答详情
源自:8-5 计时器setTimeout()

什么也显示不出来,求指点

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


提问者:白水向前冲 2015-01-06 16:42

个回答

  • Ursula
    2015-01-13 14:35:11
    已采纳

    页面加载的时候,页面元素按从上到下的顺序加载,其中JS方法块中的方法也依次执行,因此在执行startCount方法时count文本框并未加载,所以无法显示赋值。解决方法:方法1——把JS标签块放到文本框后面执行;方法2——将startCount()改为window.onload=startCount; 即在页面加载完成后执行该方法。

  • sixGod
    2015-01-06 18:05:22

    注意页面的渲染顺序,把<script>...</script>放到代码最后面去