課程
/前端開發
/JavaScript
/JavaScript進階篇
為什么這里需要兩次調用,而左邊給的例子卻只需要在函數體內寫一次呢?
2017-03-08
源自:JavaScript進階篇 8-5
正在回答
html從上到下進行加載,因為在函數下面有setTimeout("startCount()",1000);
在一秒后才執行startCount(),使得有足夠的時間加載完整個html頁面,所以函數里面的
document.getElementById('count').value=num;這句代碼才能夠讀取到有id=count的元素
所以文本框中才會有數據
使用startCount();直接調用時,html頁面沒能繼續加載完,就要去執行startCount()函數了,所以里面的
document.getElementById('count').value=num;這句代碼是不能識別id=count的元素的
?
忘記說了,例子里面是通過onClick調用計數器函數的。
第一個是在函數體內的,并不會自動運行,所以要再調用一次,以保證計數器運行,否則文本框內是沒有數據的。通過調用函數“startCount();”也是可以的,讓計數器開始運行。
黃太_后 提問者
舉報
本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界
1 回答setTimeout寫了兩次的問題
3 回答為什么要設置兩次setTimeout
2 回答setTimeout("startCount()",1000);要寫兩次
3 回答為什么要使用兩次setTimeout("startCount()",1000);
1 回答setTimeout執行多次
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-03-21
html從上到下進行加載,因為在函數下面有setTimeout("startCount()",1000);
在一秒后才執行startCount(),使得有足夠的時間加載完整個html頁面,所以函數里面的
document.getElementById('count').value=num;這句代碼才能夠讀取到有id=count的元素
所以文本框中才會有數據
使用startCount();直接調用時,html頁面沒能繼續加載完,就要去執行startCount()函數了,所以里面的
document.getElementById('count').value=num;這句代碼是不能識別id=count的元素的
?
2017-03-08
忘記說了,例子里面是通過onClick調用計數器函數的。
2017-03-08
第一個是在函數體內的,并不會自動運行,所以要再調用一次,以保證計數器運行,否則文本框內是沒有數據的。通過調用函數“startCount();”也是可以的,讓計數器開始運行。