有没有办法覆盖补间的属性?如果我写
el.set('tween', {duration: ‘long’, onComplete: callback});
进而
el.set('tween', {duration: 200, onComplete: secondcallback });
我无法替换旧属性(再次触发回调)
是否可以在不每次都创建新的 Fx.Tween 的情况下解决这个问题?
有没有办法覆盖补间的属性?如果我写
el.set('tween', {duration: ‘long’, onComplete: callback});
进而
el.set('tween', {duration: 200, onComplete: secondcallback });
我无法替换旧属性(再次触发回调)
是否可以在不每次都创建新的 Fx.Tween 的情况下解决这个问题?
每次onComplete
在同一个实例上设置时,都会推送回调并与相同的“完成”事件相关联,并且每个回调将在事件触发后被调用。
要“替换”onComplete
回调,您可以使用removeEvent
,即
el.set('tween', {duration: ‘long’, onComplete: callback});
//and then...
el.get('tween')
.removeEvent('complete', callback)
.addEvent('complete', secondcallback);
我会创建两个独立的补间并保留它们:
var fx1 = new Fx.Tween(element, {onComplete: callback});
var fx2 = new Fx.Tween(element, {onComplete: anothercallback});
然后你可以单独使用它们:
fx1.start('background-color', 'cyan', 'red');
fx2.start('background-color', 'red', 'cyan');