检测客户端焦点何时离开窗口

时间:2012-10-29 04:02:55

标签: actionscript-3 flash

我看到一些在线Flash游戏可以做到这一点:

当您将当前网页切换到其他窗口或其他网页标签时,应用程序将绘制一个黑色区块并告诉您离开应用程序,单击闪存区域继续。

我已经尝试了一些事件,如焦点进出,或者鼠标离开舞台,但反应并不是我所期望的。可能我用错误的方式使用它们。请告诉我你是否得到了解决方案。< / p>

var count:int = 0;

this.stage.addEventListener(Event.MOUSE_LEAVE,function(e:Event):void
{
    //only be called if your mouse cursor leave the area,but can't detect whether you're actually switch to other program.
    trace('mouseleave',count++);
});

this.stage.addEventListener(FocusEvent.FOCUS_OUT,function(e:Event):void
{
    //no reaction
    trace('focus out',count++);
});

this.stage.addEventListener(MouseEvent.ROLL_OVER,function(e:Event):void
{
    //no reaction
    trace('mouseenter',count++);
});

1 个答案:

答案 0 :(得分:1)

有两种方法:

  • 使用Event.ACTIVATE事件。但是瑞士法郎之前应该关注焦点。
  • 使用ActionScript中的JavaScript调用来检查焦点上的窗口或制表符。