3

我正在开发一个与 Javascript 通信的 Flash 应用程序,以允许更多功能,例如自定义 HTML 输入等,方法是在 Flash 应用程序顶部放置一个绝对定位的 div 并使用 Flash 和 Javascript 控制其位置等。

因为这些 html 元素必须出现在 Flash 内容之上 ,所以我认为下面的基本 CSS 就足够了:

#flashContent {
                position: absolute;
                left: 0px;
                top: 0px;
                z-index: 0;
            }
            #htmlContent {
                position: absolute;
                left: 200px;
                top: 200px;
                z-index: 1;
                width: 200px;
                height: 200px;
                background-color: yellow;
            }

因此,htmlContent它的 z-index 比 flash 内容高,因此它应该显示在它的上方。不幸的是,这似乎只在您将 Flash 对象的“wmode”参数设置为“透明”时才有效。

此设置的问题在于,它会将应用程序的帧速率严重降低到无法接受的程度。

对于静态内容,这似乎不是问题,但是对于我的应用程序,您可以拖动各种元素,这些元素必须实时移动(同时移动鼠标)。

那么,如何在不使用“透明”wmode 参数的情况下在 Flash 内容之上启用 html 内容,或者如何在使用“透明”wmode 参数时优化帧速率?

4

3 回答 3

2

您可以使用 wmode = 'opaque',并且仍然使用 z-index'ing。透明可能非常有问题。

于 2010-01-24T22:43:21.900 回答
0

如果您已经使用 javascript 在顶部显示新图层,您可以在启用 div 时隐藏 flash,并在完成后再次显示。

于 2010-01-24T22:50:09.497 回答
0

不要使用绝对定位。漂浮它。

于 2010-12-21T03:55:18.747 回答