為什么這樣數字不會增加
<!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();//這樣數字不會增加,如果把這行換成setTimeout(startCount,1000); 就可以了 ,為什么?
</script>
</head>
<body>
<form>
<input type="text" id="count" />
</form>
</body>
</html>
如果把
2016-03-06
在函數startcount()后調用函數startcount()無效果的原因是script放在input前此時由于input還沒加載所以函數停止調用,script放在input后即可生效
2016-03-06
這樣放到input后面:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>計時器</title>
</head>
</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();//這樣數字不會增加,如果把這行換成setTimeout(startCount,1000); 就可以了 ,為什么?
</script>
</body>
</html>
2016-03-03
把script放在input后面就有用了,直接換成setTimeout其實并沒有用到函數startCount