我有一个仅在Mac上的FireFox上运行我的应用程序时发生的问题,当用户单击右键时,将调度mouseDown事件,这会导致不良行为。

有没有人遇到过这个问题?有什么办法吗?

谢谢

最佳答案

我通过使用RIGHT_MOUSE_DOWN和RIGHT_MOUSE_UP事件解决了此问题。看我的代码。如果鼠标右键处于DOWN状态,则不会处理鼠标左键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");
        }
    }
}

关于javascript - 在Mac上使用Firefox右键单击Flash应用程序会触发mousedown,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28564092/

10-12 00:09
查看更多