[問題] javascript setTimeout looping

看板Ajax作者 (bizkit)時間17年前 (2007/05/10 17:05), 編輯推噓6(603)
留言9則, 5人參與, 最新討論串1/1
寫了一個簡單的javascript想用div畫出簡單的圖形/線條 用setTime來製造動態的效果 可是寫出來只有opera可以正確跑出來 IE跟firefox都不行 有人能告訴我哪裡寫錯了嗎? CODE: 26 var i=0; 27 function Tloop(){ 28 DivOut(i,i,i+20,1,"blue"); 29 i++; 30 if(i<100) 31 timeout = setTimeout('Tloop();',50); 32 } DivOut()只是一個照傳入參數印出一個指定大小位置div的function Firefox的Error console會寫Tloop is not defined -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.132.58.176 ※ 編輯: csdcbiz 來自: 220.132.58.176 (05/10 17:06)

05/10 18:26, , 1F
我家firefox可以run
05/10 18:26, 1F

05/10 18:28, , 2F
問題應該是出在其他地方
05/10 18:28, 2F

05/10 21:09, , 3F
DivOut裡面有document.writeln 是這個原因嗎?
05/10 21:09, 3F

05/11 03:28, , 4F
重點是你在哪裡執行它, 而不是這個函式哪裡錯了
05/11 03:28, 4F

05/11 03:28, , 5F
它的意思是說 , 你程式執行的時候找不到Tloop
05/11 03:28, 5F

05/11 10:12, , 6F
出現這錯誤不一定是Tloop寫錯,有可能是其他地方結構寫錯了
05/11 10:12, 6F

05/11 10:34, , 7F
除錯要看仔細,起碼看看錯誤訊息指向哪一列吧
05/11 10:34, 7F

05/12 01:25, , 8F
好像是setTimeout->DivOut->writeln會把source蓋掉
05/12 01:25, 8F

05/12 01:25, , 9F
我用display的方式改寫了 感謝大家
05/12 01:25, 9F
文章代碼(AID): #16Gk1S60 (Ajax)
文章代碼(AID): #16Gk1S60 (Ajax)