亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

我把這句setTimeout("startCount()",1000)這句自執行換成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);?
??}
??//setTimeout("startCount()",1000);
?startCount();
</head>
<body>
<form>
<input?type="text"?id="count"?/>
</form>
</body>
</html>
把這句setTimeout("startCount()",1000)這句自執行換成startCount();讓自執行的startCount()進入不斷加1的循環,為什么運行不出來效果?

正在回答

2 回答

把整個JS代碼放在window.onload(function(){

放你的JS代碼

})這樣就可以等整個頁面加載完畢后再執行JS代碼,就可以避免因為解析先后而導致的捕捉不到的問題,如果代碼是捕捉元素問題,那加進去就可以解決

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

慕碼人3910529 提問者

謝謝window.onload(function(){})!
2015-10-08 回復 有任何疑惑可以回復我~

代碼改錯了,你新增了兩個語法錯誤。分別是</head>出現兩次,<script>無閉合標簽。另整個js代碼需要在文檔加載完畢之后執行,或者寫成如下所示

<!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()",1000);?
??}
??//setTimeout("startCount()",1000);
?startCount();
?</script>
</body>
</html>


0 回復 有任何疑惑可以回復我~
#1

慕碼人3910529 提問者

<script>代碼放在前面是剛開始解析的時候捕捉不到document.getElementById('count').value嗎?等整個html頁面解析完了也沒有捕捉到?
2015-10-07 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

我把這句setTimeout("startCount()",1000)這句自執行換成startCount();為啥運行沒效果?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號