右键单击mac上的flash应用程序,使用firefox触发器mousedown

时间:2015-02-17 14:48:13

标签: javascript actionscript-3 flex firefox

我遇到的问题只发生在我在Mac上的FireFox上运行我的应用程序时,当用户点击右键时,调度mouseDown事件会导致不必要的行为。

有没有人遇到过这个问题?任何方式呢?

感谢

1 个答案:

答案 0 :(得分:4)

我通过使用RIGHT_MOUSE_DOWN和RIGHT_MOUSE_UP事件解决了这个问题。看我的代码。如果右键是DOWN,则不会处理鼠标左键。右键单击UP后,左鼠标DOWN将被处理。因此,现在单击鼠标右键后,将不会调度MOUSE_DOWN。抱歉我的英文。

package
{
    import flash.display.Sprite;
    import flash.events.MouseEvent;

    public class Main extends Sprite
    {
        private var isRightDown:Boolean;

        public function Main()
        {
            stage.addEventListener(MouseEvent.RIGHT_MOUSE_DOWN, rightDown);
            stage.addEventListener(MouseEvent.RIGHT_MOUSE_UP, rightUp);
            stage.addEventListener(MouseEvent.MOUSE_DOWN, leftDown);
        }

        private function leftDown(event:MouseEvent):void
        {
            if (!isRightDown)
            {
                trace("left DOWN");
            }
        }

        private function rightUp(event:MouseEvent):void
        {
            isRightDown = false;
            trace("right UP");
        }

        private function rightDown(event:MouseEvent):void
        {
            isRightDown = true;
            trace("right DOWN");
        }
    }
}