3 回答


TA貢獻(xiàn)2條經(jīng)驗(yàn) 獲得超0個(gè)贊
我也很好奇為什么必須把setTimeout("startCount()", 1000); 改成setTimeout(startCount, 1000);?
雖然調(diào)試的結(jié)果確實(shí)是當(dāng)使用setTimeout("startCount()", 1000);的時(shí)候,瀏覽器居然會(huì)報(bào)錯(cuò)VM325:1 Uncaught ReferenceError: startCount is not defined ? ?at <anonymous>:1:1
更神奇的是,如果我用setTimeout(startCount(),1000); 調(diào)試運(yùn)行居然會(huì)一直調(diào)用startCount(),導(dǎo)致瀏覽器報(bào)錯(cuò)setTimeOut.html:8
求大神解答

TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個(gè)贊
為什么要這樣改
setTimeout("startCount()", 1000);?
改成
setTimeout(startCount, 1000);?
上面的不是等效的嗎?

TA貢獻(xiàn)50條經(jīng)驗(yàn) 獲得超32個(gè)贊
下面的代碼試一下效果。
<!DOCTYPE?HTML> <html> <head> <meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8"> <title>計(jì)時(shí)器</title> </head> <body> <form> <input?type="text"?id="count"?/> </form> </body> <script?type="text/javascript"> (function(){ var?ele?=?document.getElementById('count'), num?=?0; var?startCount?=function(){ ele.value?=?num++; setTimeout(startCount,1000);? }; startCount(); }()); </script> </html>
添加回答
舉報(bào)