flash的html代码:
<object width="100%" height="100%" data="052852.swf" name="gameobj" id="gameobj" type="application/x-shockwave-flash">
<param value="052852.swf" name="movie">
<param value="always" name="allowScriptAccess">
<param value="internal" name="allowNetworking">
<param value="high" name="quality">
</object>
层居于flash之上
把object的wmode设为 Opaque 或Transparent都可以使div居于flash之上,相对来说Opaque更专业。wmode 属性/参数值 Window | Opaque | Transparent | Direct | GPU,默认值为 Window。
(可选)允许使用 Internet Explorer 4.0 中的透明 Flash 内容、绝对定位和分层显示功能。此标记/属性仅在带有 Flash Player ActiveX 控件的 Windows 中有效。
"Window"在 Web 页上用影片自己的矩形窗口来播放应用程序。"Window"表明此 Flash 应用程序与 HTML 层没有任何交互,并且始终位于最顶层。
"Opaque" 使应用程序隐藏页面上位于它后面的所有内容。
"Transparent"使 HTML 页的背景可以透过应用程序的所有透明部分显示出来,并且可能会降低动画性能。
"Direct":直接渲染模式,在该模式下,flashplayer可以通过硬件直接对画面进行合成,并呈现在屏幕上。使用这种模式能够得到比window模式更好的渲染效果,特别是在视频播放方面,如果页面的flash需要使用了stagevideo或者stage3D,那么必须使用这种模式(貌似在mac safari下即使window也能使用stagevideo)。它有比window模式更好的渲染,但也有window模式下的所有缺点。
当flash与键盘方向键具有交互时(如flash小游戏),把wmode设为Opaque 或Transparent后,方向键控制flash交互的同时也影响页面的上下左右滚动(如IE8、IE7)。
第二种方法是通过iframe遮盖实现,把一个空iframe置于flash之上,为最上层div设置更高的层级居于iframe之上。部分游戏falsh用这种情况处理,iframe必需设置背景色且透明度不能为0才有效。
第三种方法是把flash放进iframe引入。
wmode属于控件属性,只有flash初始化才有效,所以通过js动态修改这个属性无效,可通过重写flash代码使flash初始化,使wmode生效。
获取object标签内代码块
IE6、IE7、IE8无法通过innerHTML获得object标签内代码块,IE9、chrome13、firefox5等可获取。
flash加载进度
通过计时器每隔一段时间调用目标flash的PercentLoaded()方法,获知flash的加载情况。