source是为了兼容各个浏览器。因为浏览器对视频格式支持不统一,有些浏览器例如有些浏览器支持 mp4格式 ,那么它就播放第一个 mp4 格式的视频,如果它不支持就检查是不是支持下面的 ogg 视频,如果支持就播放,不支持的话继续向下,下面没有source了,那么就显示“Your browser does not support the video tag.”
注意:
如果你在 <video>内设置了 muted 属性,是可以通过 autoplay 实现视频的自动播放,反之则需要用户手动授权,点击播放才可以实现自动播放。
因为谷歌浏览器禁止页面在没有用户授权的情况下进行有声的视频播放
Html5 Video是现在html5最流行的功能之一,得到了大多数最新版本的浏览器支持.包括IE9,也是如此.不同的浏览器提供了不同的原生态浏览器视频空间.我们制作自定义视频控件为了在所有的浏览器中有一个相同的Html5视频控件而不受默认视频控件的控制.实际上,自定义视频控件并不困难.本文将告诉你如何用jQuery自定义视频控件,希望对你有用!
DEMO DOWNLOAD
HTML5 Video 基础标签
1 <video id="myVideo" controls poster="video.jpg" width="600" height="400" >
2<source src="video.mp4" type="video/mp4" />
3<source src="video.webm" type="video/webM" />
4<source src="video.ogv" type="video/ogg" />
5<p>Your browser does not support the video tag.</p>
6 </video>
video标签最好包含mp4、webM和ogg这三种源视频文件-可以跨浏览器。如果浏览器不支持html5,你可以使用flash作为后备!
开始制作 HTML5 Video Controls
幸运的是HTML5 Video 的Api可以用JavaScript访问,并使用他们来作为控制视频的媒介.
在编码之前让我简单的介绍一下jQuery是如何获取video标签的.
在JavaScript中我们使用getElementById('videoID')来获取Video标签,作为结果,我们会获取到一个Dom对象.但是这不是等价的jQuery对象.$("videoID")会返回一个jQuery对象.不是Dom对象.这就是为什么在将其转换为Dom对象之前我们不能直接使用jQuery选择器调用/使用Html5 Video的Dom属性和功能.
1 //return a DOM object
2 var video = document.getElementById('videoID')//or
3 var video = $('#videoID').get(0)//or
4 var video = $('#videoID')[0]
5
6 //return a jQuery object
7 var video = $('#videoID')
Video Play/Pause Controls 播放/暂停 按钮
好的,这是所有的介绍.现在让我们来编码.首先,我们要创建一个简单的播放/暂停按钮.
1 <div class="control">
2<a href="#" class="btnPlay">Play/Pause</a>
3 </div>
我们可以轻松的控制Html5 Video的播放与暂停状态.
1 //Play/Pause control clicked
2 $('.btnPlay').on('click', function() {
3if(video[0].paused) {
4 video[0].play()
5}
6else {
7 video[0].pause()
8}
9return false
10 }
两种方法如下:
1、用css隐藏video视频播放控件:
<style type="text/css">
video::-webkit-media-controls{
display:none !important
}
</style>
css隐藏原生html5 video controls,这么设置后即使没有设置controls为false,native controls也不会再出现。其他的按钮,包括播放按钮、播放进度条、静音按钮、音量条等,都可以像全屏按钮一样自定义样式。不止是隐藏。
2、用js隐藏video视频播放控件:
<script type="text/javascript">
var video=document.getElementById("video")
video.controls=false
</script>
HTML5的video虽然可用controls来展示控件,并进行控制播放暂停等,但是不同的浏览器显示的效果可能不一样,所以很多时候需要使用Dom来进行自定义的一些操作和控制。
扩展资料:
HTML5 video标签中的新属性:
1、autoplay:如果出现该属性,则视频在就绪后马上播放。
2、controls:如果出现该属性,则向用户显示控件,比如播放按钮。
3、height:设置视频播放器的高度。
4、loop:如果出现该属性,则当媒介文件完成播放后再次开始播放。
5、muted:规定视频的音频输出应该被静音。
6、poster:规定视频下载时显示的图像,或者在用户点击播放按钮前显示的图像。
7、preload:如果出现该属性,则视频在页面加载时进行加载,并预备播放。
8、src:要播放的视频的 URL。
9、width:设置视频播放器的宽度。
参考资料来源:百度百科-html5 video