通过第三方Flash添加从Interactive Flash对象中窃取焦点

时间:2009-02-27 10:40:46

标签: flex flash actionscript-3

我已经开发了一个简单的交互式Flash游戏,但现在看来有时Flash添加(Facebook显示的第三方)以某种方式从我的Flash应用程序中窃取焦点(错误?)。我的应用程序有textfield(),焦点应保持到游戏结束。

我的flash对象使用urlrequest / javascript在启动时请求焦点(它适用于IE和Firefox),但似乎焦点很容易被盗。我应该怎么做才能在丢失和/或如何确保其他Flash应用程序没有窃取它时始终回到焦点?

此外,我的javascript焦点请求目前无法使用Safari / Crome浏览器,那么请求焦点并保留它的最兼容的方式是什么?

2 个答案:

答案 0 :(得分:1)

当我绝对需要对焦时,我通常只是让玩家点击闪光灯中的某些东西来给它焦点,它甚至不需要“点击这里聚焦”而是一个开始按钮或类似的东西。

actionscript3还有一个事件会在你的应用失去焦点时触发,你可以使用它暂停游戏并弹出一个框,要求玩家重点关注。

我认为“强迫”焦点最多也是不可靠的,无论如何你都需要适当的后备。

作为旁注;我从未遇到过“窃取焦点”的问题,我甚至不确定我理解为什么广告可以/会这样做?

答案 1 :(得分:1)

我从来没有处理过你的具体情况(我也从来没有听说过这种情况,但是我不得不在网页上与其他Flash对象作斗争),但如果你要听的话怎么办?对于你的文本字段上的MouseEvent.FOCUS_OUT,然后设置一个单次计时器,比如250ms,然后在激活时将焦点重新开始(使用你可能需要的任何JavaScript来说服浏览器再次给你焦点)。

不幸的是,我不太了解与Safari或Chrome的集成,以帮助您解决第二个问题。