宝码
2022-07-04 14:28
<!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('num')",1000);
}
setTimeout("startCount('num')",1000);
</script>
</head>
<body>
<form>
<input type="text" id="count" />
</form>
</body>
</html>
有3个问题:
1、startCount不需要传参
2、<script >标签要放到<body>最后,否则 document.getElementById('count').value 会报错
3、js第一层(你的代码中的第二个setTimeout),这里应该是调用函数startCount(),类似示例里面的
onClick="numCount()"
修改代码如下:
<!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('num')",1000); setTimeout("startCount()",1000); } startCount(); //setTimeout("startCount('num')",1000); </script> </body> </html>
为什么我调一次就可以了
第一次实现自身调用,创建一个循环计数器
第二次是在设定时间后执行startCount()函数
JavaScript进阶篇
468061 学习 · 21891 问题
相似问题