青いmcにカーソルを合わせると、写真付きのナビゲーションが展開されます。マウスがナビゲーションの上にあるときはいつでも、ナビゲーションは展開されたままになります。マウスがナビゲーションを離れるとすぐに、青いmcの下に戻ります。
ロードされると、本来のように動作します。ステージのサイズを変更すると、parent-mc全体が中央に配置されます。
問題:ステージのサイズ変更により、マウスがnavigation-mcを離れていなくても、ナビゲーションのMOUSE_OUTイベントが発生します。
private function onNavOver(e:MouseEvent):void
{
this._bluemc.removeEventListener(MouseEvent.MOUSE_OVER,onMouseAreaBottomOver);
this._bluemc.removeEventListener(MouseEvent.MOUSE_OUT,onMouseAreaBottomOut);
TweenLite.to(this._navigation,0.7,{y:this._offsetY,ease:Expo.easeInOut});
TweenLite.killTweensOf(this._navigation,false);
}
private function onNavOut(e:MouseEvent):void
{
this._bluemc.addEventListener(MouseEvent.MOUSE_OVER,onMouseAreaBottomOver,false,0,true);
this._bluemc.addEventListener(MouseEvent.MOUSE_OUT,onMouseAreaBottomOut,false,0,true);
TweenLite.to(this._navigation,0.7,{y:this._initialY,ease:Expo.easeInOut});
}
上記のコードは、ナビゲーションの終了時または終了時に呼び出されるイベント関数です。ナビゲーションを開いたままにするために、bluemcイベントは削除されます。ここに潜在的な競合があると思います。青いmcのMOUSE_OUTイベントは、削除される前に発生する可能性があります(onNavOver)。しかし、奇妙なことに、ステージのサイズを変更した場合にのみ、失敗が表示されます。マウスがナビゲーションに近づいても、ナビゲーションは元に戻ります。