AS3 OSX的古怪的滚动效果遗失鼠标滚轮控件

问题描述:

我正在构建一个web应用程序,使用Away3D库设计和动画简单的3d场景,但界面本身的设计是围绕滚动菜单构建的,占用了整个高度屏幕。AS3 OSX的古怪的滚动效果遗失鼠标滚轮控件

问题是,在OSX浏览器有一个愚蠢的怪癖,如果页面滚动时,它已经走得尽可能,该页面可以进一步拖动,揭示拉丝金属背景。这看起来不错,什么都没有,但它几乎毁了swf对象的滚动。我使用闪光灯生成器并将其导出到safari,如果相当烦人(尤其是使用mac触摸板,它可以提供比鼠标轮更高的滚动增量),但是当我在firefox/chrome中打开我的应用程序时同样的效果发生,并导致应用程序和浏览器大幅放缓。

我发现使用ExternalInterface停止swf向页面发送鼠标事件的代码,但它们似乎都禁用了swf中的检测,并且我找不到其他任何帮助。如果有人知道一个解决方案,那么你将会省去我几个月的工作,因为这似乎是OSX上Flash的一个可疑不必要的缺陷!

在此先感谢如果有人能帮助

+0

你会发布你的工作或非工作的例子吗?因为看起来像有很多解决方法,如“MouseWheelTrap”。 – 2012-03-26 09:46:40

想通了,万一别人卡住这个:

该功能的称为弹性滚动,如果你正在运行的Flash/Flex应用程序这需要所有的浏览器空间,你可以简单地在页面CSS中设置body {overflow:hidden;},它会工作得很好。显然,这将禁用任何类型的页面滚动 - 我相信你可以在内嵌的元素内将其重新打开。

希望这可以帮助别人!