Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 舞台上的怪异行为_Actionscript 3_Mouseevent_Stage - Fatal编程技术网

Actionscript 3 舞台上的怪异行为

Actionscript 3 舞台上的怪异行为,actionscript-3,mouseevent,stage,Actionscript 3,Mouseevent,Stage,我一悬停在蓝色的mc上,带有图片的导航就展开了。 每当鼠标位于导航上方时,导航将保持展开状态。 一旦鼠标离开导航,它就会移回蓝色mc下方 当它被加载时,它会像它应该做的那样。 舞台的调整会使整个父mc居中 问题:阶段调整会导致导航触发鼠标退出事件,即使鼠标没有离开导航mc 上面的代码是在导航结束或离开导航时调用的事件函数。 bluemc事件将被删除,以保持导航打开。我认为这是一个潜在的冲突:蓝色mc的鼠标移出事件可能会在移除之前触发(onNavOver)。但奇怪的是,只有当我调整舞台的尺寸时,

我一悬停在蓝色的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});


    }