博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

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

Posted on 2011-05-14 09:39  linFen  阅读(346)  评论(0编辑  收藏  举报
最近在做一个网站,要在一个静态的背景上加一个透明的Flash会显示动态的效果,按照常规方式加了代码后,在IE中能显示透明背景Flash,但是用Firefox浏览器却发现没有透明的效果,那究竟应该怎么加呢?于是搜索和研究了一下。

  特别推荐:网页上透明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="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 后修正了这个问题。