2013-10-01 38 views
0

我正在使用for循環,我正在更新一個svg。我想在每個循環之後有一個延遲,以便創建一個動畫。我嘗試將代碼放入setInterval函數的for循環中,以便創建動畫效果。但功能沒有得到執行,雖然語法是完美的:如何防止在間隔被清除之前執行setInterval()之後的指令?

setInterval(func, 80); 

相反,setInterval後傳來的指令執行。在調試模式下,如果我調試代碼並長時間運行,過了一段時間後輸入了所需的循環。

所以,我想也許延遲太長,試圖減少延遲,但它也不工作。 我嘗試了各種版本的setInterval語法,即使用括號和不使用,並通過引用和複製,但它只是沒有發生!

+1

您可以發佈所有的實際代碼的相關部分的等待?一個'setInterval'行確實沒有幫助。 –

+0

你必須在這裏提供更多的代碼,因爲它會每隔80毫秒執行一次函數'func',這在這裏幫助不大。 – C5H8NNaO4

+1

您似乎誤解了'setInterval'的作用。它與其他語言中的「sleep()」函數不同。 – georg

回答

0

取而代之的是for循環,可以使用下面的循環你一個100毫秒的代碼每次

function UpdateSVG() 
{ 
    // ... your code here 

    setTimeout(UpdateSVG, 100); 
} 

UpdateSVG(); 
相關問題