我正在玩html5视频,因为iphone / ipad的后备功能很不错。
html5视频首先检查<source>
元素,如果不支持任何格式,则它会回退到<video>
标记内提供的任何内容(例如flash)。
我想反转行为以节省带宽:默认情况下使用闪光灯,如果不可用,则回退到html5视频。
是否有任何方式来获取此行为而不使用javascript? (然后解决方案变得非常明显)。
最好,hansi, -
P.S。我确实尝试将元素“从里到外”(<object><video/></object>
而非<video><object/></video>
,但这会导致视频显示两次)
p.p.s。我目前的解决方案是
if( navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"] ){ ... }
else{ ... }
这是次优的,因为它适用于iphone / ipad,但在使用没有安装闪存的旧浏览器时会导致很大的混乱。
答案 0 :(得分:2)
感谢“zach at longtail”!,有效!
供参考,以下是如何获得“首先闪存,然后是html5”的行为:
<object type="application/x-shockwave-flash" width="..." height="..." data="...">
<param name="movie" value="..." />
<video width="..." height="...">
<source src="..." type="video/mp4" />
<source src="..." type="video/webm" />
<source src="..." type="video/ogg" />
</video>
</object>
为youtube / vimeo嵌入提供html5替代方案:
请注意,拥有<object data="..." />
属性至关重要,并且在youtube / vimeo / etc的嵌入代码中缺少该属性。提供。
请务必更改,只需将<video/>
标记放入您复制+粘贴的代码中,就会让您感到头疼。