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

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

為什么這樣寫不行?

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

正在回答

1 回答

因為解析HTML文檔是從上往下解析的,所以執行JS代碼的時候,HTML的DOM結構還沒有構建好,就無法得到相應節點。

解決辦法1:整個js代碼放在</body>標簽之前。

解決辦法2:設置延時操作。

startCount(); --》? setTimeout("startCount()",1000);?

等待的1s時間中 DOM已經搭建完成。

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

好我再想想

為什么在js代碼前面加window.onload也不行
2016-12-14 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JavaScript進階篇
  • 參與學習       468829    人
  • 解答問題       22582    個

本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界

進入課程

為什么這樣寫不行?

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

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

幫助反饋 APP下載

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

公眾號

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