Js视频播放器插件Video.js使⽤⽅法详解
Video.js快速⼊门
我们可以下载 Video.js 的源码放到⾃⼰的服务器上,或者使⽤免费的 CDN 托管版本。
在页⾯中引⽤video-js.cs样式⽂件和video.js
<link href="video-js.css" rel="external nofollow" rel="stylesheet" type="text/css">
<script src="video.js"></script>
使⽤免费的CDN托管版本
<link href="dn/4.12/video-js.css" rel="external nofollow" rel="stylesheet">
<script src="dn/4.12/video.js"></script>
设置flash路径,Video.js会在不⽀持html5的浏览中使⽤flash播放视频⽂件
<script>
videojs.options.flash.swf = "video-js.swf";
</script>
引⼊video标签,进⾏视频播放
<video id="example_video_1" class="video-js vjs-default-skin" controls preload="none" width="640" height="264"
poster="der/oceans-clip.png"
data-setup="{}">
<source src="//www.jb51/视频地址格式1.mp4" type='video/mp4' />
<source src="//www.jb51/视频地址格式2.webm" type='video/webm' />
<source src="//www.jb51/视频地址格式3.ogv" type='video/ogg' />
<track kind="captions" src="demo.captions.vtt" srclang="en" label="English"></track><!-- Tracks need an ending tag thanks to IE9 -->
<track kind="subtitles" src="demo.captions.vtt" srclang="en" label="English"></track><!-- Tracks need an ending tag thanks to IE9 -->
</video>
如果需要设置⾃动播放,将下⾯代码加到video后⾯
播放按钮居中
flash swf播放器
默认情况下,⼤的播放按钮是被定为在左上⾓的,这样就不会覆盖视频内容。如果你想让这个播放按钮居中,你可以给你的video 标签添加额外的 vjs-big-play-centered 样式.如果你还对播放按钮样式不满意可重新定义.video-js .vjs-big-play-button{/*这⾥的样式重写*/}。
<video id="xttblog" class="video-js vjs-default-skin vjs-big-play-centered"
controls preload="auto" width="640" height="264"
poster="blog/test/oceans-clip.png"
data-setup='{"example_option":true}'>
</video>
为动态加载的HTML元素设置Video.js
web 页⾯或者应⽤是动态加载 video 标签的(ajax,appendChild),这样在页⾯加载后这个元素是不存在的,那么你会想要⼿动设置播放器⽽不是依靠 data-setup 属性。要做到这⼀点,⾸先将 data-setup 属性从 video 标签中移除掉,这样在播放器初始化的时候就不会混乱了。
videojs("xttblog", {}, function(){
// Player (this) is initialized and ready.
});
videojs ⽅法中的第⼀个参数是你的 video 标签的 ID,⽤你⾃⼰的代替。
第⼆个参数是⼀个选项对象。它允许你像设置 data-setup 属性⼀样设置额外的选项。
第三个参数是⼀个 'ready' 回调。⼀旦 Video.js 初始化完成后,就会触发这个回调。
你也可以传⼊⼀个元素本⾝的引⽤来代替元素ID:
ElementById('example_video_1'), {}, function() {
// This is functionally the same as the previous example.
});
ElementsByClassName('awesome_video_class')[0], {}, function() {
// You can grab an element by class if you'd like, just make sure
// if it's an array that you pick one (here we chose the first).
});
如果您⽆法播放内容,您得确保使⽤了正确的格式,你的 HTTP 服务器可能⽆法提供正确的 MIME类型的内容Video.js的详细使⽤⽅法如下
var videoObj = videojs(“videoId”);
ready:
//在回调函数中,this代表当前播放器,
//可以调⽤⽅法,也可以绑定事件。
})
播放:
myPlayer.play();
暂停:
myPlayer.pause();
获取播放进度:
var whereYouAt = myPlayer.currentTime();
设置播放进度:
myPlayer.currentTime(120);
视频持续时间,加载完成视频才可以知道视频时长,且在flash情况下⽆效
var howLongIsThis = myPlayer.duration();
缓冲,就是返回下载了多少
var whatHasBeenBuffered = myPlayer.buffered();
百分⽐的缓冲
var howMuchIsDownloaded = myPlayer.bufferedPercent();
声⾳⼤⼩(0-1之间)
var howLoudIsIt = myPlayer.volume();
设置声⾳⼤⼩
myPlayer.volume(0.5);
取得视频的宽度
var howWideIsIt = myPlayer.width();
设置宽度:
myPlayer.width(640);
获取⾼度
var howTallIsIt = myPlayer.height();
设置⾼度:
myPlayer.height(480);
⼀步到位的设置⼤⼩:
myPlayer.size(640,480);
全屏
离开全屏
添加事件
durationchange
ended //播放结束
firstplay
fullscreenchange
loadedalldata
loadeddata
loadedmetadata
loadstart
pause //暂停
play //播放
progress
seeked
seeking
timeupdate
volumechange
waiting
resize inherited
var myFunc = function(){
// Do something when the event is fired
};
事件绑定
<("ended", function(){
console.log("end", this.currentTime());
});
<("pause", function(){
console.log("pause")
});
删除事件
⼀个页⾯中有多个视频,需要点击后触发bootstrap 的模态窗,再弹出视频html:
<a videohref="//www.jb51/xxx.mp4" class="video_link"><img src="../images/xxx.jpg"/></a> JS:
$(".video_link").click(function() {
var myPlayer = videojs('my-video');
var videoUrl = $(this).attr("videohref");
videojs("my-video", {}, function() {
$("#mymoda .video-con #my-video source").attr("src", videoUrl);
myPlayer.src(videoUrl);
myPlayer.load(videoUrl);
myPlayer.play();
});
$(".click-modal").click();
});
// 模态窗消失时,关闭视频
$('#mymoda').on('dal', function() {
myPlayer.pause();
更多关于Js视频播放器插件的⽂章请点击下⾯的相关链接

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。