1

トゥイーンのプロパティを上書きする方法はありますか?私が書いたら

el.set('tween', {duration: ‘long’, onComplete: callback});

その後

el.set('tween', {duration: 200, onComplete: secondcallback });

古いプロパティを置き換えることができません(コールバックが再度トリガーされます)

毎回新しいFx.Tweenを作成せずに、この問題を解決することは可能ですか?

4

2 に答える 2

2

同じインスタンスに設定するたびonCompleteに、コールバックがプッシュされ、同じ「完了」イベントに関連付けられます。各コールバックは、イベントが発生した後に呼び出されます。

コールバックを「置き換える」にはonComplete、 を使用できますremoveEvent

el.set('tween', {duration: ‘long’, onComplete: callback});

//and then...

el.get('tween')
    .removeEvent('complete', callback)
    .addEvent('complete', secondcallback);

デモ => http://jsfiddle.net/NNzQ7/

于 2011-07-01T21:41:11.613 に答える
0

2 つの独立したトゥイーンを作成し、それらを保持します。

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');
于 2011-07-01T21:07:28.867 に答える