视频播放插件 Video.js 使用和个版本下载

来源:https://blog.csdn.net/zhanghao143lina/article/details/79457035





Video.js 是一个通用的在网页上嵌入视频播放器的 JS 库,Video.js 自动检测浏览器对 HTML5 的支持情况,如果不支持 HTML5 则自动使用 Flash 播放器。(要支持ie低版本请下载5.4.3版 )点击进入官网

下载

各个版本下载

使用

引入文件


        
        
        
        
  1. "video-js.css" rel="stylesheet" type="text/css">
  2. <script src="video.js">script>

:一般我使用时会把下载的包整个拷贝到项目的plugin目录下,一方面可以方便以后查看Demo的使用方法,另一方面也避免内部文件之间引用的路径问题。

设置flash路径,Video.js会在不支持html5的浏览中使用flash播放视频文件。


        
        
        
        
  1. <script>
  2. videojs.options.flash.swf = "video-js.swf" ;
  3. script>

HTML


        
        
        
        
  1. <video id="example_video_1" class="video-js vjs-default-skin" controls preload="none" width="640" height="264"
  2. poster = "http://video-js.zencoder.com/oceans-clip.png"
  3. data-setup = "{}" >
  4. <source src="http://视频地址格式1.mp4" type='video/mp4' />
  5. <source src="http://视频地址格式2.webm" type='video/webm' />
  6. <source src="http://视频地址格式3.ogv" type='video/ogg' />
  7. <track kind="captions" src="demo.captions.vtt" srclang="en" label="English"> track>
  8. <track kind="subtitles" src="demo.captions.vtt" srclang="en" label="English"> track>
  9. video>

设置自动播放将下面代码加到html中代码后面


        
        
        
        
  1. <script type="text/javascript">
  2. var myPlayer = videojs( 'example_video_1' ); // video 标签中的ID
  3. myPlayer.ready( function() {
  4. myPlayer.play(); // 调用播放函数
  5. });
  6. script>

默认情况下,大的播放按钮是被定为在左上角的,这样就不会覆盖视频内容。如果你想让这个播放按钮居中,你可以给你的 video 标签添加额外的 vjs-big-play-centered样式,比如:


        
        
        
        
  1. <video id="example_video_1" class="video-js vjs-default-skin vjs-big-play-centered"
  2. controls preload = "auto" width = "640" height = "264"
  3. poster = "http://video-js.zencoder.com/oceans-clip.png"
  4. data-setup = '{"example_option":true}' >
  5. ...
  6. video>

如果你还对播放按钮样式不满意可重新定义video-js .vjs-big-play-button{/这里的样式重写/}

为动态加载的 HTML 元素设置 Video.js

如果你的 web 页面或者应用是动态加载 video 标签的(ajax,appendChild,等等),这样在页面加载后这个元素是不存在的,那么你会想要手动设置播放器而不是依靠 data-setup 属性,做法如下:

  1. 将 data-setup 属性从 video 标签中移除掉,避免播放器混乱。
  2. 运行下面的 javascript

        
        
        
        
  1. videojs("example_video_1", {}, function(){
  2. // Player (this) is initialized and ready.
  3. });
  • videojs 方法中的第一个参数是你的 video 标签的 ID,用你自己的代替。
  • 第二个参数是一个选项对象。它允许你像设置 data-setup 属性一样设置额外的选项。
  • 第三个参数是一个 ‘ready’ 回调。一旦 Video.js 初始化完成后,就会触发这个回调。
注意

在动态加载HTML进行初始化player对象的时候,很容易出现播放界面混乱的情况,我做的时候就出现了比如播放条错位,缺少播放时间和全局时间的显示,有白点等问题。遇到这种情况先检查加载顺序,如果不是的话也不要慌,在浏览器里找到混乱的元素,自己进行调试,把修改的 css 样式放到 HTML 的