2010-07-22 86 views
0

您好以下Flash对象放置在HTML中,Flash似乎在Firefox,Chrome,Safari中呈现良好效果,但在任何版本的IE中都不会显示!在Internet Explorer中无法呈现的Flash

有人可以让我知道这个对象有什么错,或者我特别想念IE浏览器!

 



 

由于提前, Tanmay

回答

0

我相信你需要movie参数。这适用于我:

<!doctype html> 
<object data="http://jquery.thewikies.com/swfobject/fireworks.swf" width="440" height="550" name="demoLaunch" id="demoLaunch" type="application/x-shockwave-flash"> 
    <param value="true" name="democonnect"> 
    <param value="always" name="allowscriptaccess"> 
    <param value="transparent" name="wmode"> 
    <param value="demo1=1&amp;demo2=3&amp;demo3=12&amp;demo4=19" name="flashvars"> 
    <param name="movie" value="http://jquery.thewikies.com/swfobject/fireworks.swf"> 
</object> 

除了跨浏览器的JS为此目的,最好依靠Javascript来控制没有闪回fallbacks。我会推荐jquery swfobject。

+0

这真的对我有用。非常感谢。 – jtanmay 2010-07-22 21:23:57

+0

也感谢提及jquery swfobject,这真的看起来不错,并会尝试实现它。谢谢 – jtanmay 2010-07-22 21:29:00

0

您是否尝试过验证您的HTML和CSS?你几乎肯定会在某个地方出现编码错误,这会帮助你找到它。 http://validator.w3.org/

1

使用SWFObject来嵌入Flash元素,它将解决您所有的跨浏览器问题。

0

实际上,这里的问题在于您使用的是W3C有效的HTML,IE有一种倾向不相容的倾向。要让IE嵌入Flash内容,您需要使用嵌入,它与对象完全相同,但不属于W3C标准。

的嵌入标签的语法如下:

<embed src="somefilename.swf" width="550" height="400"></embed> 

这通常是刚放置的对象标记的内部,使得这两个选项在页面上(不用担心,也不会在了解已有对象标记的浏览器中渲染两次)。

避免使用非标准HTML的常见方法是使用Javascript嵌入,该代码将非标准HTML代码写入浏览器,但直到页面呈现后才写入。这允许页面通过W3C HTML验证器,并且仍然可以跨平台工作。为此,最好的JavaScript库一般为SWFObject,它可让您只包含一次flash内容,并将html写出来供用户查看您的内容。无论浏览器是否在浏览您的内容。

+0

你不需要使用'embed'元素。看到我的答案。 – 2010-07-22 20:50:18

+0

感谢大家的建议和实施方式。这将帮助我更多地提高我对Flash的知识(因为我非常喜欢Flash部分)。 梅德的建议帮助了这部分。谢谢 – jtanmay 2010-07-22 21:25:49

相关问题