0

タイムラインをネストしています。

コードは次のようなものです:

timeLine.to(obj1,1.2,{css:{display:"block"}})  

nestedTimeline1 = new TimelineMax({repeat:1});

// initially obj2 is with opacity :0

nestedTimeline1.append(TweenLite.to(obj2,1.4,{css:{opacity:1,left:187,bottom:108}}))
nestedTimeline1.append(TweenLite.to(obj2,.5,{css:{opacity:0}}),-.8)

timeLine.append(nestedTimeline1);

私がする時:

timeLine.totalProgress(0);

私のアニメーションは最初から始まります。しかし問題は、obj2 の不透明度が 0 にリセットされないことです。

なぜこの問題が発生するのか理解できませんか?

どんな解決策も大歓迎です..

4

1 に答える 1

4

最初の行から始めましょう。

You cannot animate to display:block- アニメートする数値がありません。opacity:0からアニメーション化できますopacity:1

さて、次の問題を考えてみましょう。数秒以上アニメーション化
しようとしています。 次のトゥイーンは、秒のオフセットで、同じオブジェクトを何秒から何秒もアニメーション化します。opacity11.4
00.5-0.8

ここにエラーが表示されるかどうかはわかりませんが、視覚的な表現に分解してみましょう。

-------------------------------------------------- <-- Tween 1
                           ---------------         <-- Tween 2

ご覧のとおり、Tween 2 はTween 1 の前に終了します。これは、タイムラインの秒数で押し戻し、数秒0.8しか実行されないため0.5です。したがって、Tween 1 には、0.3アニメートする最後の数秒があります。opacity:1

.append(TweenLite...
nestedTimeline1.to(...)また、補足として、同じことを行うのではなく、便利なメソッドを使用できます。

于 2013-01-17T06:00:04.467 に答える