Actionscript 3 舞台上的怪异行为
我一悬停在蓝色的mc上,带有图片的导航就展开了。 每当鼠标位于导航上方时,导航将保持展开状态。 一旦鼠标离开导航,它就会移回蓝色mc下方 当它被加载时,它会像它应该做的那样。 舞台的调整会使整个父mc居中 问题:阶段调整会导致导航触发鼠标退出事件,即使鼠标没有离开导航mc 上面的代码是在导航结束或离开导航时调用的事件函数。 bluemc事件将被删除,以保持导航打开。我认为这是一个潜在的冲突:蓝色mc的鼠标移出事件可能会在移除之前触发(onNavOver)。但奇怪的是,只有当我调整舞台的尺寸时,失败才会出现。即使鼠标移动导航,导航也会向后移动。我知道了: 事件混淆:通过添加滚动/移出事件而不是鼠标滚动/移出事件来解决Actionscript 3 舞台上的怪异行为,actionscript-3,mouseevent,stage,Actionscript 3,Mouseevent,Stage,我一悬停在蓝色的mc上,带有图片的导航就展开了。 每当鼠标位于导航上方时,导航将保持展开状态。 一旦鼠标离开导航,它就会移回蓝色mc下方 当它被加载时,它会像它应该做的那样。 舞台的调整会使整个父mc居中 问题:阶段调整会导致导航触发鼠标退出事件,即使鼠标没有离开导航mc 上面的代码是在导航结束或离开导航时调用的事件函数。 bluemc事件将被删除,以保持导航打开。我认为这是一个潜在的冲突:蓝色mc的鼠标移出事件可能会在移除之前触发(onNavOver)。但奇怪的是,只有当我调整舞台的尺寸时,
还有一个不可见的MC集合:MC.y=stage.stageHeight->On stageResize它的位置与导航重叠,因为它没有更新。如何在不关闭导航的情况下调整舞台的大小?如果它是用代码完成的,你能发布它吗?是的,当调整舞台大小时,导航会向后移动。但是当我再次调整大小并展开导航时,鼠标区域不知何故又不一样了。我可以想象在MouseEvents之间会有一种混乱:离开bluemc是在我导航(onNavOver)的同时被触发的。。。
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});
}