0

フラッシュの特定の要素へのホバー オンとホバー オフ トゥイーンを設定しました。要素の上にホバーすると、情報ウィンドウが下部からスライドインし、ホバーをオフにすると元に戻ります。ホバー、アニメーションのホバーが終了する前にホバーすると、指定されたオブジェクトが最初のアニメーションの最後にジャンプして戻ります。誰かが何かの上にカーソルを置いたときにアニメーションをイーズインおよびイーズアウトするにはどうすればよいですか?

function initialPlacement()
{
    block1.x = (-814);
    block1.y = (stage.stageHeight - 100);
}

initialPlacement();

tension.addEventListener(MouseEvent.ROLL_OVER,hover1);
tension.addEventListener(MouseEvent.ROLL_OUT,off1);

function hover1(event:MouseEvent):void{
    hover1tween.start();
}

var hover1tween:Tween = new Tween(block1,"x",Regular.easeOut,(0-block1.width),0,30,false);

hover1tween.stop();

function off1(event:MouseEvent):void{
    off1tween.start();
}

var off1tween:Tween = new Tween(block1,"x",Regular.easeInOut,0,(0-block1.width),30,false);
off1tween.stop();

initialPlacement();
4

1 に答える 1

1

最も簡単な方法は、トゥイーンを再起動するのではなく、ある場所から新しい方向にトゥイーンを送信する「continueTo」関数を使用することだと思います。

function initialPlacement()
{
    block1.x = (-814);
    block1.y = (stage.stageHeight - 100);

    block1tween = new Tween(block1,"x",Regular.easeInOut,(0-block1.width),0,30,false);
    block1tween.stop();
}

var block1tween:Tween;
initialPlacement();

tension.addEventListener(MouseEvent.ROLL_OVER,hover1);
tension.addEventListener(MouseEvent.ROLL_OUT,off1);

function hover1(event:MouseEvent):void{
    block1tween.continueTo(0, 30);
}

function off1(event:MouseEvent):void{
    block1tween.continueTo((0-block1.width),30);
}

それはあなたのニーズを満たしていますか?それ以外の場合は、トゥイーンを新しいものに置き換えることができます。それぞれがトゥイーンの「begin」パラメーターの現在の座標を渡しますが、「continueTo()」を使用する方がはるかに簡単でクリーンです。

于 2011-02-24T23:01:03.373 に答える