以下緩動不會觸發。它的確如果queue:true被刪除了,但我們也需要這一點。帶隊列功能的JQuery緩動
$(this).delay(delay).animate({left: '+' + bounceoffset + 'px', top:0, opacity:0.6}, {queue:true, duration:800}, 'elastic');
它是如何完成的。
以下緩動不會觸發。它的確如果queue:true被刪除了,但我們也需要這一點。帶隊列功能的JQuery緩動
$(this).delay(delay).animate({left: '+' + bounceoffset + 'px', top:0, opacity:0.6}, {queue:true, duration:800}, 'elastic');
它是如何完成的。
documentation不會說queue: true
表示queue: 'fx'
這是默認隊列。
它默認排隊,所以只需放下queue: true
即可。
編輯你實際上沒有使用正確的格式,這是
.animate(properties [, duration] [, easing] [, complete])
.animate(properties, options)
你的情況變化{queue:true, duration:800}
到800
RTFM。
再次編輯
你以爲你正在使用的第一個參數的結構,但你實際使用的第二個。 JQuery將一個對象看作第二個參數,並認爲它是第二個參數。
我覺得真正的問題是「彈性」並不是真正的緩和功能。所以如果 JQuery忽略你的最後一個參數(認爲只有兩個參數),那麼你的代碼就可以工作,但是如果你將{queue:true, duration:800}
更改爲800
,那麼JQuery將採用第一個參數結構並失敗,因爲你指定的緩存是未定義的。
順便說一句。這些是在JQuery中定義的緩和效果:
線性擺動jswing DEF easeInQuad easeOutQuad easeInOutQuad easeInCubic easeOutCubic easeInOutCubic easeInQuart easeOutQuart easeInOutQuart easeInQuint easeOutQuint easeInOutQuint easeInSine easeOutSine easeInOutSine easeInExpo easeOutExpo easeInOutExpo easeInCirc easeOutCirc easeInOutCirc easeInElastic easeOutElastic easeInOutElastic easeInBack easeOutBack easeInOutBack easeInBounce easeOutBounce easeInOutBounce
否我需要隊列:正如我在我的問題 –
中所說的那樣,但它默認排隊。請參閱修訂後的回答 – ori
默認情況下,它不會排隊。該動畫過程,但在Firefox的隊列:true仍然需要爲了保持延遲屬性 –