如何切换可见性时如何防止GWT Flash / ActionScript组件重新加载?

时间:2009-03-10 17:42:03

标签: css flex flash actionscript gwt

我有一个Google Web Toolkit(GWT)应用程序,它使用我创建的Flash / PaperVision3D组件。 GWT应用程序将Flash组件的实例放在选项卡面板中的不同选项卡上。在执行应用程序期间,一切都很有效,直到用户开始在选项卡之间单击。在GWT级别,JavaScript正在更改style.display属性以隐藏和显示“标签”的内容。看起来Flash组件(通过脚本编写'embed'标签包含在页面中)每次可见时都会重新加载/重新启动。

如何阻止它重新启动/重新加载?由于DIV标记被设置为style.display ='none',因此我对自动生成的GWT代码控制的事实没有多少控制权。是否有一些设置可能在Flex / Flash开发中允许它这样做?或者也许在Embed标签中?甚至是在JavaScript级别?

1 个答案:

答案 0 :(得分:2)

显然这是Firefox bug。它在Internet Explorer中似乎不是问题。

一种可能的解决方案是将Flash元素隐藏并绝对定位(“position:absolute; visibility:hidden;”),然后通过用户单击选项卡时调用的JavaScript函数将其置于可见性中。 / p>

根据Flash文件的复杂程度,您还可以使用ExternalInterface对象,该对象允许JavaScript函数和ActionScript之间的通信。您可以保存电影的当前状态,然后在用户单击选项卡时将此状态信息转储回来。

抱歉,我无法提供更多帮助。