HTML5视频,如果没有.ogv文件,则返回flash
如果没有必要的文件类型,我如何回退到flash视频播放器 例如,此代码:HTML5视频,如果没有.ogv文件,则返回flash,html,html5-video,Html,Html5 Video,如果没有必要的文件类型,我如何回退到flash视频播放器 例如,此代码: <video controls width="500"> <source src="<?= $mov ?>" type="video/mp4" /> <embed src="http://blip.tv/play/gcMVgcmBAgA%2Em4v" type="application/x-shockwave-flash" width="1024" height="
<video controls width="500">
<source src="<?= $mov ?>" type="video/mp4" />
<embed src="http://blip.tv/play/gcMVgcmBAgA%2Em4v" type="application/x-shockwave-flash" width="1024" height="798" allowscriptaccess="always" allowfullscreen="true"></embed>
</video>
您可以使用JavaScript来检测它:
(function (video) {
if (!video.canPlayType || !video.canPlayType('video/mp4')) {
// Flash fallback
}
}(document.createElement('video')));
你真的应该包括一个.ogv
文件,这不需要太多的努力,有这么多的视频转换器软件,你也可以找到在线转换器
如果你不想那么做的话
使用
什么是现代化?
Modernizr将类添加到
元素中,允许您在样式表中针对特定的浏览器功能。使用它实际上不需要编写任何Javascript
你有没有想过在CSS中使用if语句来提供一些很酷的功能,比如边框半径
?嗯,有了现代化,你就可以做到这一点!语法也非常直观:
.multiplebgs div p {
/* properties for browsers that
support multiple backgrounds */
}
.no-multiplebgs div p {
/* optional fallback properties
for browsers that don't */
}
Modernizr是一个小而简单的JavaScript库,它可以帮助您利用新兴的web技术(CSS3、HTML5),同时对可能还不支持这些新技术的旧浏览器保持良好的控制水平
Modernizr使用功能检测来测试当前浏览器是否具有即将推出的功能,如rgba()、边框半径、CSS转换等。这些功能目前正在跨浏览器实现,通过Modernizer,您可以立即开始使用它们,并通过一种简单的方法控制尚不支持它们的浏览器的回退
此外,Modernizer创建了一个自命名的全局JavaScript对象,其中包含每个特性的属性;如果浏览器支持该属性,则该属性的计算结果将为true
,如果不支持,则该属性的计算结果将为false
最后,Modernizer还增加了对HTML5元素样式和打印的支持。这允许您使用更多语义、前瞻性的元素,如
、
和
,而无需担心它们在Internet Explorer中无法工作
现代化者做不了什么
Modernizr不向浏览器添加缺少的功能;相反,它检测功能的本机可用性,并为您提供一种方法来保持对站点的良好控制,而不管浏览器的功能如何
但是,如果您对此感兴趣,您可能会想看看这里:
下面是一个使用视频格式回退和最终回退到Flash的完整示例:只需添加另一个源标记
它会起作用……Peek-a-boo!:)@trufa:Yes:),在该页面上写道:不幸的是,你不能轻易地选择向Firefox提供HTML5视频,而Flash会退回到Safari。Safari了解该元素,并希望找到合适的视频格式来加载。如果找不到一个,它将显示一个空播放器。因此基本上答案是否定的,这是无法做到的?如果你想要一个只使用HTML而不使用JavaScript的解决方案,那么Firefox看起来不会降级为Flash()。为了避免出现空的视频播放器,如果Firefox上未启用MP4支持,则需要添加OGG或WEBM文件。