0

当启动“wmode”并且用户正在玩需要箭头键的 Flash 游戏时,Internet Explorer 上的浏览​​器窗口也会移动。看来,解决这个问题的唯一方法是删除“wmode”。但是,如果删除了“wmode”,Flash 游戏将上升到堆叠顺序的顶部,并且所有其他元素(例如可扩展横幅或下拉菜单)都位于 Flash 后面。没有多少 iFrame 或 CSS 可以解决这个问题。

我找到了一个解决方案,它可以保留“wmode”,同时还可以让 Flash 游戏在单击后获得键盘焦点,因此 Internet Explorer 浏览器窗口不会移动。这个解决方案意味着其他 Dom 元素可以超越 Flash。

我已将下面的 AS3 代码放入一个简单的示例中,它似乎可以工作。它基本上在内容中放置了一个滚动窗格,然后将其设为不可见。

作为一名 PHP 开发人员而不是 AS3 开发人员,我的问题是 - 任何 AS3 开发人员是否可以看到将以下代码放入基于 Flash/AS3 构建的游戏中的问题或不利影响。这同样可以在 AS2 中工作吗?

非常感激

_scrollPane = new ScrollPane();
_scrollPane.setSize(stage.stageWidth, stage.stageHeight);
_scrollPane.horizontalScrollPolicy = ScrollPolicy.OFF;
_scrollPane.verticalScrollPolicy = ScrollPolicy.OFF;
_scrollPane.alpha=0;
stage.addChild(_scrollPane);
4

1 回答 1

0

经过更多测试后,这似乎不是一个切实可行的选择。虽然 swf 文件在单击后获得焦点,并且需要箭头键控制的精灵可以在不影响浏览器窗口的情况下移动,但由于 scrollPane 的子索引,阻止了单击或拖动与精灵的交互。

我一直在玩 IE10 的预发布版本,无论 wMode 处于(或删除)何种状态,浏览器窗口仍然受到与 swf 的箭头键交互的影响。如果其他人遇到此问题或找到答案,将不胜感激。

于 2012-07-19T09:20:32.160 回答