如何让div层覆盖Flash
1. 修改flash自身属性,适用 Firefox 跟 IE 这种方案需要修改flash代码,使flash在加载时为透明的,所以div层可以覆盖这个flash。在原来的flash代码中添加<param name="wmode" value="transparent"> 在<embed>中添加属性 wmode="transparent"
2使用iframe 使用iframe的方式可以同时支持firefox跟IE,但是实现方式略有不同。原理都是先用iframe盖住flash,然后设置iframe的z-index使div能盖住这个iframe。但是在firefox中iframe 默认状态下不能盖住 flash,需要将flash所在层的overflow属性设为auto,IE下没有此问题。
a. 在firefox中的示例代码
<div class="flash" style="overflow:auto;">
<!-- <iframe id="cover_iframe" frameborder="0" style="position:absolute;width:1000px;height:1000px;z-index:20;"></iframe> -->
<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0' width='1000px' height='700px'>
<param name='movie' value='/images/index.swf' />
<param name="wmode" value="transparent">
<param name='quality' value='high' />
<embed src='/images/index.swf' wmode="transparent" quality='high' pluginspage='http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash' type='application/x-shockwave-flash' width='1000' height='700'> </embed>
</object>
</div>
注: “<div style=”overflow:auto;”><iframe>…</iframe><object>…</object></div>” firefox 中必须使用这种结构才有效在IE中只需要使iframe与div在一个同一个位置即可。
如何让div层覆盖Flash
最新推荐文章于 2014-06-24 16:10:39 发布