让所有浏览器支持HTML5 video视频标签

http://www.zhangxinxu.com/wordpress/2010/03/%E8%AE%A9%E6%89%80%E6%9C%89%E6%B5%8F%E8%A7%88%E5%99%A8%E6%94%AF%E6%8C%81html5-video%E8%A7%86%E9%A2%91%E6%A0%87%E7%AD%BE/

 

 

一、前面的唠叨

我记得就是前几个月吧,有条消息说YouTube支持了HTML5视频嵌入标签video,好吧,我听说而已,因为我不是个擅长FQ的人,到底如何我也不得而知。

与主题不相关的HTML5方面的东西我就不多说了,对于video标签,获取大家都听说了,这个标签的功能如同现在HTML语言中的img标签,就现在,比如要链接并显示一张图片,可以这样子:

<img src="http://image.zhangxinxu.com/image/study/s/s256/mm1.jpg" />

结果就可以显示下面这张美女图片(张含韵小妹妹):

所以,在HTML5的时代里,基本上只要一个<video>标签加一个视频的src链接地址就可以播放视频了,对于开发人员来讲真是“酷毕了”(《神话》中经典台词)。

然而,当现实照进遐想,我们不得不去正视,现在,支持HTML5 video标签的浏览器寥寥无几。我知道chrome2以及Safari是支持的,看下面这张截自chrome 2的图:
chrome下HTML5 video视频截图 张鑫旭-鑫空间-鑫生活

使用的代码如下:

<video width="352" height="264" controls autobuffer>
	 <source src="../media/cat.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'></source>
</video>

对于Opera浏览器,您可以参阅这篇上周才发表的文章“Everything you need to know about HTML5 video and audio

对于IE浏览器,那还不知道要等到猴年马月才等到支持HTML5 video标签的时候。然而,广大劳动人民的智慧是无穷无尽的,广大开发人员的智慧也会无穷无尽的。国外领先的web开拓者们通过js,已经实现了可以让各个主流浏览器支持video标签的方法。

二、主流浏览器支持video标签

方法很简单,只要调用一段js,就可以让主流浏览器实现video标签的视频播放。

此项目已经放到Google code上,您可以点击这里查看。

使用方法:
要想让主流浏览器都支持HTML5标签,使用非常简单,只要链接一个js文件就可以了。所以,只要您的页面上(头部或底部)有这么段代码:

<script src="http://html5media.googlecode.com/svn/trunk/src/html5media.min.js"></script>

就可以了。

对于HTML部分,使用类似下面:

<video src="video.mp4" width="320" height="240" controls autobuffer></video>

是不是很简单啊!

为了演示效果,我就直接把此js以及video标签签到这篇文章里,您将会在下面看到这段10秒钟的关于猫咪的视频,您可以切换IE或是Firefox或是chrome或是Safari观看(界面有差别的哦~~)。


当加载完毕,点击播放按钮,就可以看到视频播放了。
或者您也可以狠狠地点击这里:HTML5 video多浏览器支持测试demo

三、一些说明

关于js
此js文件,您可以点击下面两处下载(右键 – [目标|链接]另存为):
1. 原项目地址下载
2. 鑫空间下载

关于实现
实现的原理大致是使用了flash技术,使用flash播放器嵌入视频的方式,使得IE及Firefox支持video标签。这个播放器称为flowplayer,具体我也不是很了解。

关于视频格式
目前,这种多浏览器支持方法所支持的视频格式有限,为mp4和ogv格式,否则视频可能不会播放。

可能遇到的问题
您可能会遇到这样的问题:我明明链接的是mp4格式的文件啊,为什么在IE及Firefox下有问题。如果您遇到的问题是在这两个浏览器下视频不播放,或是播放时只有声音而没有图像,而在chrome浏览器或是Safari下良好,则您可能要仔细您mp4文件的编码格式了。

对于编码,我不在行,好像是视频要存储为h.264文件,不要问我是什么东西,我也不知道,这可能还要靠您自己解决了。

最后,百无聊赖,先上一张Safari浏览器下的截图,原因是,Safari下的播放器真是卡哇伊。

Safari HTML5 video截图 张鑫旭-鑫空间-鑫生活

如果您发现文章中有表述不准确或是有相关问题需要交流可以通过评论或是去这里进行提问交流。
原创文章,转载请注明来自张鑫旭-鑫空间-鑫生活[http://www.zhangxinxu.com]
本文地址:http://www.zhangxinxu.com/wordpress/?p=661

(本篇完)

转载于:https://www.cnblogs.com/zhp404/articles/4371881.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您在使用HTML5 video标签时点击视频时没有看到控制栏,可能是由于浏览器的默认行为导致的。浏览器默认会在点击视频时暂停或播放视频,但是在移动设备上,点击视频时不会显示控制栏。 您可以使用以下方法来解决这个问题: 1. 使用JavaScript来控制视频的播放和暂停,并在点击时显示控制栏。以下是一个简单的示例代码: ```html <video id="video" src="video.mp4"></video> <script> var video = document.getElementById('video'); var controlsVisible = false; video.onclick = function() { if (video.paused) { video.play(); controlsVisible = true; setTimeout(function() { video.controls = false; controlsVisible = false; }, 3000); // 3秒后隐藏控制栏 } else { video.pause(); } } video.onmousemove = function() { if (!controlsVisible) { video.controls = true; controlsVisible = true; setTimeout(function() { video.controls = false; controlsVisible = false; }, 3000); // 3秒后隐藏控制栏 } } </script> ``` 这段代码使用了video元素的onclick事件和onmousemove事件来控制视频的播放和暂停,并在点击或鼠标移动时显示控制栏。通过设置setTimeout函数来延迟隐藏控制栏,可以让用户有足够的时间来使用控制栏进行操作。 2. 使用第三方的视频播放器库,例如Video.js、jPlayer等。这些库提供了更丰富的控制功能,并且可以自定义控制栏的样式和行为。您可以根据自己的需求选择适合自己的播放器库来使用。 希望这些方法可以帮助您解决问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值