在Mozilla和Firefox浏览器中实现Flash透明背景
最近做一个网站要在一个静态的背景上加一个透明的Flash会显示动态的效果,按照常规方式加了后,在IE中能显示正常:
<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="http://www.webjx.com/htmldata/2007-09-04/webjx_com.swf">
<param name="wmode" value="transparent">
<embed src="http://www.webjx.com/htmldata/2007-09-04/webjx_com.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="760" height="160"></embed>
</object>
无意中用Firefox浏览器却发现出现透明的Flash没有透明的效果,那究竟应该怎么加呢?于是搜索了一下(也不知道现在这些学习的都懒到家了,有时候蛮简单的 非得到论坛问一问,不自己动手研究一下....)
这里了解了在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="http://www.webjx.com/htmldata/2007-09-04/webjx_com.swf">
<param name="wmode" value="transparent">
<embed src="http://www.webjx.com/htmldata/2007-09-04/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 后修正了这个问题