開心的山羊
2016-07-24 12:32:21
<!DOCTYPE?HTML>
<html>
<head>
<meta?charset="utf-8">
<title>計時器</title>
</head>
<script?type="text/javascript">
???var?num=0;
???
????window.onload?=?function?startCount()?{
????
????document.getElementById('count').value=num;
????
????num=num+1;
????setTimeout('startCount()',1000);
??}
??
</script>
</head>
<body>
<form>
<input?type="text"?id="count"?/>
</form>
</body>
</html>我的思路是這樣的:當頁面加載完畢就執行這個函數,之后每個1秒執行一次;但 事與愿違 1秒后出現錯誤老師們,window.onload 到底是怎么用的啊~~>_<~~今當遠離,臨‘碼’涕零,不知所言。望各位足智多謀的‘軍師’為小弟謀劃一番,不勝感激(抱拳)(抱拳)。
2 回答
已采納

檸檬酸鈉
TA貢獻331條經驗 獲得超534個贊
出師表背瘋了吧你……
window.onload代表頁面加載完成后執行的函數,固定格式就是
window.onload = function () {
? // do something
}
在大括號里面按照正常寫代碼的格式寫就行了,當這貨不存在

萬卷古今消永日
TA貢獻6條經驗 獲得超2個贊
window.onload=function(){
? ?var num=0;
? ?function startCount(){
? ? ? ?num=parseInt(document.getElementById('count').value);
? ? ? ?num+=1;
? ? ? ?console.log(num);
? ?}
? ?setTimeout(startCount,1000);
}
兄弟,你寫的有問題啊,首先賦值,num應該在左邊,其次,窗體加載完成調用的函數不必要命名,setTimeout()調用startCount直接寫成setTimeout(startCount,1000),不要括號,這個整體不應該在startCount( ){ }內部調用啊,這不是相當于這個函數的執行過程了嗎,這是有毛病的,所以要放外面才起作用,不然會報錯。
添加回答
舉報
0/150
提交
取消