小白级别继续,大咖绕路javascript
这里只是在pc端搞里一下,不知道其余平台有什么问题,只是给你们个思路。css
videojs的优缺点什么的,这里就不说了,百度一下,各位大咖,一大啪啦的讲解,研究了两天始终不知道怎么去自定义控件,videojs 有一个专门设计皮肤的网站(传送法阵:https://codepen.io/heff/pen/EarCt),可是搞了半天仍是不懂怎么弄,最后在一篇文章中受到启发,其实很简单,暴力走起。html
先搞一张图java
好吧, 我认可,样式很low,这里就不吐槽设计了app
ok,上代码ide
myPlayer = videojs('my-video', { 'controls': false, //关闭原来的,否则hover的时候总出来 'BigPlayButton': false, 'loop': true },function(){ var ctrlBar = createEle(); // 建立一个div节点 this.el().appendChild(ctrlBar); // 添加进去,css设置好样式就能够了 // 初始化音量宽度 var vol = this.volume(); $('.vol-box .vol-on').width(vol * 100); // 进度条自动前进 this.on('timeupdate', function(){ var curTime = this.currentTime(); var durTime = this.duration(); var w = (curTime/durTime * this.width()).toFixed(2); $('.progress>p').width(w); $('.progress>span').css('left', w + 'px'); }); // 播放 this.play(); }); function createEle (){ var _html = ` <div class="progress"> <P></p> <span></span> </div> <div class="ctrls clearfix"> <div class="play-box fl"> <img class="play-img" src="assets/images/vjs-play.png"/> </div> <div class="vol-box fr"> <img src="assets/images/vjs-volumn.png"/> <span class="vol-line"></span> <span class="vol-on"></span> <span class="vol-top-line"></span> </div> </div> `; var ctrlBar = document.createElement('div'); ctrlBar.className = 'vjs-mycontrol-bar'; ctrlBar.innerHTML = _html; return ctrlBar; }
好吧,貌似没什么难点,就是给你们一个思路,固然,官方推荐使用Component,这里就不去搞了,oop
想研究的同窗,参考一下这个文章 http://www.javashuo.com/article/p-mwbmrdtg-e.html 最后定制组件那节就能够了网站