setTimeout 和 delay的區別

2021-06-19 05:52:53 字數 541 閱讀 9822

settimeout函式是從頁面開始的時候計算time的

jquery提供的delay函式,如果已經對某乙個元素呼叫用.delay(time)的話,那麼如果你在程式後面再次呼叫.delay(time2),那麼這個元素的第二次delay後的執行操作的時間就是從time + time2。

在控制動畫鏈的執行順序的時候如果用記錄delay時間來控制,後續對同個元素進行操作的時候就會出現計算時間不容易的情況。比如:

先控制一組div按順序fadein,然後第二組div按序fadein,兩組的元素個數不一定相同。

然後又要對第一組裡的div按序animate。這樣的情況用delay就比較麻煩,用settimeout就容易控制的多,只要對每次的delay增加就是了。

settimeout函式還有個問題就是在迴圈裡如果使用到了迴圈裡的引數的話,會出現每次迴圈的settimeout函式的引數都是同個值。

這裡有說明

有個辦法就是再分裝乙個函式

如這裡提到的,再寫乙個dosettimeout(i)函式,用i來傳參就不會出現這個問題了。

這裡有寫→

setTimeOut和setInterval的區別

區別 window.settimeout function time 設定乙個超時物件,只執行一次,無週期 window.setinterval function time 設定乙個超時物件,週期 互動時間 停止定時 window.cleartimeout 物件 清除已設定的settimeout物件...

setTimeout和setInterval的區別

使用方式 settimeout 表示式,延時時間 setinterval 表示式,互動時間 settimeout 方法是在等待指定時間後執行函式內容,且只執行一次傳入的表示式。click on the button above.an alert box will be displayed after...

setTimeout和setInterval的區別

雖然網上有很多兩者區別的文章,但是經常搞混了,好記性不如爛筆頭,記錄一下。語法 settimeout code,millisec setinterval code,millisec lang 它們都有兩個引數,乙個是將要執行的 字串,還有乙個是以毫秒為單位的時間間隔,當過了那個時間段之後就將執行那段...