HTML中嵌入的Flash不会出现在Chrome中

时间:2010-11-08 13:28:01

标签: flash google-chrome

当我在HTML中嵌入Flash视频时,它可以在IE和Firefox中使用,但不能在Chrome中使用。 我查了一下,我发现chrome为embed标签增加了两个属性,宽度和高度。 我已经在embed标签中设置了width和height属性(以像素为单位),但由于某些原因,chrome将其更改为百分比。当我检查元素并写入像素而不是百分比时,闪光灯再次可见。

这是嵌入

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"
width="600" height="1300">
<param name="src" value="flash.swf" />
<param name="wmode" value="transparent" />
<embed type="application/x-shockwave-flash"
 width="600px" height="1300px" src="flash.swf"
 wmode="transparent">
</embed>
</object>

我该如何解决?

6 个答案:

答案 0 :(得分:9)

我知道这是一个老帖子,但我也遇到了这个问题而且我找到了一个解决方案,当你在worpress中嵌入一个视频时,只使用“嵌入”标签,因为它看起来像谷歌浏览器时读到的“对象“标签,跳过里面的标签,

旧代码

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"   codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" width="600" height="1300"><param name="src" value="flash.swf" /><param name="wmode" value="transparent" /><embed type="application/x-shockwave-flash" width="600px" height="1300px" src="flash.swf" wmode="transparent"></embed></object>

新代码

<embed type="application/x-shockwave-flash" width="600px" height="1300px" src="flash.swf" wmode="transparent"></embed>

同样正如@joshuahedlund所建议的那样,可能是正确的答案,只需添加类型就可以解决问题

<object type="application/x-shockwave-flash" ... > ... </object>

答案 1 :(得分:2)

我已经使用了这个javascript代码段一段时间了,它似乎可以在大多数浏览器中找到它。你需要AC_RunActiveContent.js,从http://www.adobe.com/devnet/activecontent/articles/devletter.html下载

<script type="text/javascript">
AC_FL_RunContent(
'id', 'mediaPlayer',
'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
'width', '480',
'height', '360',
'src', 'myFlashMovie.swf',
'quality', 'high',
'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
'align', 'middle',
'play', 'true',
'loop', 'true',
'scale', 'showall',
'wmode', 'window',
'devicefont', 'false',
'bgcolor', '#000000',
'name', 'mediaPlayer',
'menu', 'true',
'allowFullScreen', 'true',
'allowScriptAccess', 'sameDomain',
'movie', 'myFlashMovie.swf',
'salign', '');</script>

答案 2 :(得分:1)

你为什么不试试

width="600" height="1300" 

而不是

width="600px" height="1300px" 

(不是HTML标准)?

答案 3 :(得分:1)

此代码适用于所有浏览器(iexplore,firefox,chrome,..),您可以尝试http://civiro.com

<object type="application/x-shockwave-flash" 
width="740" height="470" data="civiro.swf">
<param name="movie" value="civiro.swf">
</object>

答案 4 :(得分:0)

我在此页面底部发布了一个解决方案:Embedded Flash not working in Google Chrome?

使用chrome时,我遇到了使用movie和src参数的问题。我认为chrome会忽略它们(因为它们只适用于我认为的IE),但事实并非如此。

看看这是否适用于您的HTML代码:

<!--[if IE]>
  <param name="src" value="flash.swf" />
<![endif]-->

并将其余部分保持不变。让我知道,因为我好奇,它是否适合你。我在javascript中删除了src参数。

答案 5 :(得分:-1)

在使用uploadify后,我发现IE9需要classid属性,但Chrome会破坏它。考虑到这一点,没有非js /非服务器端代码方式。如果你声明它两次(有/没有classid)它将在IE和Chrome中工作,但在firefox中显示两个副本。