setTimeout不是觸發一次嗎。為什么這個代碼會計時呢
<!DOCTYPE html>
<html>
<head>
<title>瀏覽器對象</title> ?
<meta http-equiv="Content-Type" content="text/html; charset=gkb"/> ??
</head>
<body>
<h4>操作成功</h4>
<span id='second'></span> 秒后回到主頁 <a href="javascript:backup();">返回</a>
<script type="text/javascript"> ?
? ? var num=5
? ? function startCount() {
? ? ? ? if(num==0)
? ? ? ? {location.assign("http://www.baidu.com");}
? ? ? ? document.getElementById("second").innerHTML=num;
? ? ? ? num--;
? ? setTimeout("startCount()",1000);?
? ? }
? ? function backup() {
? ? ? ? window.history.back();
? ? }
? ? startCount()
</script>?
</body>
</html>
答案里看到這個代碼。沒弄懂為什么它會自動倒計時。它不是用的setTimeout只能觸發一次嗎。按理說應該是從5減到4就不動了吧,還有最后為什么要單獨寫一個? ? startCount() ? 意義何在
2016-01-22
第一個問題我懂了。。因為? setTimeout("startCount()",1000); 寫在function startCount里面所以循環了??墒菫槭裁醋詈笠恍袉为殞懸粋€?startCount() ? 啊