下面我们来分析一下原因:
wmode 属性/参数值 Window | Opaque | Transparent
模板变量:$WM
"Window"在 Web 页上用影片自己的矩形窗口来播放应用程序。"Window"表明此 Flash 应用程序与 HTML 层没有任何交互,并且始终位于最顶层。
"Opaque" 使应用程序隐藏页面上位于它后面的所有内容。
"Transparent"使HTML 页的背景可以透过应用程序的所有透明部分显示出来,并且可能会降低动画性能。
"Opaque windowless"和"Transparent windowless"都可与 HTML 层交互,从而允许 SWF 文件上方的层遮蔽应用程序。这两种选项之间的差异在于"Transparent"允许透明,因此,如果 SWF 文件的某一部分是透明的,则 SWF 文件下方的HTML 层可以透过该部分显示出来,而"opaque"则不会显示。
找到原因了我们就来解决问题:
设置flash为透明:但是如果你在DW中插入动画,再加<param name="wmode" value="transparent">是不生效的。要把整个的flash插件代码换成如下:
代码如下 | 复制代码 |
<object type="application/x-shockwave-flash" data="http://www.konnech.cn/2/images/banner.swf" width="560" height="210"> <param name="movie" value="/2/images/banner.swf" /> <param name="wmode" value="transparent" /> </object> |
另一种在页面直接加flash的解决办法
设置flash置底,加个代码:<param name="wmode" value="opaque" />但是只加这个代码,IE可行,在FF下,失效。要想在FF下起作用,还要用在object 里加个 wmode="opaque"
代码如下 | 复制代码 |
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="725" height="100"><param name="allowScriptAccess" value="sameDomain"> <param name="wmode" value="opaque"> <param name="movie" value="/uploads/media/logo2.swf"><param name="quality" value="high"><param name="bgcolor" value="#ffffff"> <embed src="https://img.lookmw.cn/media/logo2.swf" quality="high" bgcolor="#ffffff" wmode="opaque" width="725" height="100" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /></object>
|
注意添加param name=”wmode” value=”opaque”
和wmode=”opaque”
时间: 2025-01-20 19:22:14