在Mozilla和Firefox中实现Flash透明背景

yibin 2015-02-08 网站运营 633

 最近在做一个网站,要在一个静态的背景上加一个透明的Flash会显示动态的效果,按照常规方式加了代码后,在IE中能显示透明背景Flash,但是用Firefox浏览器却发现没有透明的效果,那究竟应该怎么加呢?于是搜索和研究了一下。


<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" 
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/
swflash.cab#version=6,0,29,0" width="760" height="160"> 
       <param name="movie" value="webjx_com.swf"> 
       <param name="wmode" value="transparent"> 
       <embed src="webjx_com.swf" quality="high" 
pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="760" height="160"></embed> 
</object>

  

  要在IE中实现flash背景透明,需要加这样一个值:


<param name="wmode" value="transparent">

  而在Mozilla、Firefox浏览器中起作用的是这个标签 <embed></embed> 那这样,在<embed>标签内加入属性 wmode="transparent" 就可以实现flash背景透明,遂修改代码如下:


<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="745" height="140">
       <param name="movie" value="webjx_com.swf">
       <param name="wmode" value="transparent">
       <embed src="webjx_com.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="745" height="140" wmode="transparent" ></embed>
</object>

  这样在两个主流浏览器上都可以实现flash透明了。

  为什么会这样?我搜了一下 简单的解释就是:这是 Macromedia 自己对和IE Netscape 提供的 API 不同,Flash 6 后修正了这个问题

扫码添加微信

13013082126 扫描微信 建站咨询 优化咨询