【发布时间】:2011-08-24 09:54:58
【问题描述】:
当我将鼠标悬停在蓝色 mc 上时,带有图片的导航就会展开。 每当鼠标悬停在导航上时,导航都会保持展开状态。 一旦鼠标离开导航,它就会移回蓝色 mc 下方。
当它被加载时,它确实像它应该的那样。 调整舞台大小使整个父 mc 居中。
问题:stage-resize 会导致导航的 MOUSE_OUT 事件触发,即使鼠标没有离开 navigation-mc。
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)。但奇怪的是,只有当我调整舞台大小时,才会出现失败。即使鼠标在导航中,导航也会向后移动。
【问题讨论】:
-
如何在不关闭导航的情况下调整舞台大小?如果它是用代码完成的,你可以发布它吗?
-
是的,在调整舞台大小时,导航会向后移动。但是,当调整大小并再次扩展导航时,鼠标区域又不一样了。我可以想象 MouseEvents 之间存在混淆:当我在 Navigation(onNavOver) 结束时,离开 bluemc 会同时触发...
标签: actionscript-3 mouseevent stage