我正在使用以下代码显示YouTube视频。
<object width="425" height="344">
<param name="movie"
value="**URL**">
</param>
<param name="allowFullScreen"
value="true">
</param>
<embed src="**URL**"
type="application/xshockwave-flash"
allowfullscreen="true"
width="425"
height="344">
</embed>
</object>
它适用于Firefox,但为什么不在Internet Explorer中使用?
我是一个全新的网络开发,所以我遇到了你退伍老人习惯的所有这些奇妙的不一致;)
答案 0 :(得分:8)
为了阐明,它不起作用,因为object
标记不完整。 Firefox放弃了object
元素,而是使用了回退旧学校embed
元素。 IE不支持embed
,因此您什么也得不到。
object
元素必须至少有一个type
属性,告诉它要使用哪个插件和一个data
属性告诉它要向该插件发送什么。在IE中,您还需要在对象内的data
值中镜像<param name="movie">
属性,因为它以不同方式运行插件。
IE不会以这种方式“流式传输”部分加载的Flash文件。为此,您必须使用ActiveX classid
而不是type
来告诉它使用哪个插件。如果您关心这一点(并且您可能不会:对于小文件,存根加载器以及在完成之前无用的文件,它没有区别)那么您必须开始提供嵌套对象或嵌入的组合,quickly becomes confusing
答案 1 :(得分:7)
试试这个:
<object type="application/x-shockwave-flash" data="VID_URL" width="425" height="344">
<param name="movie" value="VID_URL" />
</object>
答案 2 :(得分:1)
以前浪费了几个小时来完成同样的问题。不同的原因虽然......
对于IE9,YouTube嵌入(至少是iframe)无效,因为我之前为Google广告服务器添加了针对IE的跟踪保护。在这种情况下,我必须禁用跟踪保护(安全&gt;跟踪保护)或点击地址栏右侧的按钮(“在此网站上过滤了一些内容”),以警告最终用户过滤内容。< / p>