以下宽松不会触发。如果 queue:true 被删除,它会这样做,但我们也需要那个位。
$(this).delay(delay).animate({left: '+' + bounceoffset + 'px', top:0, opacity:0.6}, {queue:true, duration:800}, 'elastic');
它是如何完成的。
以下宽松不会触发。如果 queue:true 被删除,它会这样做,但我们也需要那个位。
$(this).delay(delay).animate({left: '+' + bounceoffset + 'px', top:0, opacity:0.6}, {queue:true, duration:800}, 'elastic');
它是如何完成的。
文档没有说指定queue: true
意味着queue: 'fx'
哪个是默认队列。
它默认排队,所以只需删除queue: true
.
编辑您实际上没有使用正确的格式,即
.animate( properties [, duration] [, easing] [, complete] )
.animate( properties, options )
在您的情况下更改{queue:true, duration:800}
为800
实时调频。
再次编辑
您认为您使用的是第一个参数结构,但实际上您使用的是第二个。JQuery 将对象视为第二个参数,并认为它是第二个参数。
我认为真正的问题是“弹性”并不是真正的缓动功能。因此,如果 JQuery 忽略了您的最后一个参数(认为只有两个参数),您的代码可以工作,但是如果您更改{queue:true, duration:800}
为800
,则 JQuery 会假定第一个参数结构并失败,因为您指定的缓动是未定义的。
顺便提一句。这些是 JQuery 中定义的缓动:
linear swing jswing def easeInQuad easeOutQuad easeInOutQuad easeInCubic easeOutCubic easeInOutCubic easeInQuart easeOutQuart easeInOutQuart easeInQuint easeOutQuint easeInOutQuint easeInSine easeOutSine easeInOutSine easeInExpo easeOutExpo easeInOutExpo easeInCirc easeOutCirc easeInOutCirc easeInElastic easeOutElasticeaseInOutElastic easeInBackeaseOutBackeaseInOutBackeaseInBounceeaseOutBounce easeInOutBackeaseInBounceOutBackeaseOutBounce ease