不得不吐槽一下video.js的文档,写的不敢恭维,废话不多说,下面进入正题:
- 引入方式
- 标签引入
<video
id="my-player"
class="video-js" // 必加
controls //是否显示控件,默认显示
preload="auto" //预加载
poster="//vjs.zencdn.net/v/oceans.png" // 视频首图,作用是什么,自己猜
data-setup='{}'> // 必加
<source src="//vjs.zencdn.net/v/oceans.mp4" type="video/mp4"></source>
<source src="//vjs.zencdn.net/v/oceans.webm" type="video/webm"></source>
<source src="//vjs.zencdn.net/v/oceans.ogv" type="video/ogg"></source>
<p class="vjs-no-js"> // 不支持video.js显示的文字内容
To view this video please enable JavaScript, and consider upgrading to a
web browser that
<a href="http://videojs.com/html5-video-support/" target="_blank">
supports HTML5 video
</a>
</p>
</video>
2. js引入
当离开video所在页面时建议调用player.dispose()方法销毁当前实例
var player = videojs('my-player');
videojs('my-player').ready(function() {
player.src('xxx.xxx.mp4');
player.load();
player.play();
});
- 小技巧
- 禁止在iPhone safari中自动全屏
<video playsinline ></video>
注意,在iOS10之前用的是webkit-playsinline。
2. 暂停时显示播放按钮
.vjs-paused .vjs-big-play-button,
.vjs-paused.vjs-has-started .vjs-big-play-button {
display: block;
}
3. 修改播放按钮
.video-js .vjs-big-play-button{
font-size: 2.5em;
line-height: 2.3em;
height: 2.5em;
width: 2.5em;
-webkit-border-radius: 2.5em;
-moz-border-radius: 2.5em;
border-radius: 2.5em;
background-color: #73859f;
background-color: rgba(115,133,159,.5);
border-width: 0.15em;
margin-top: -1.25em;
margin-left: -1.75em;
}
/* 中间的播放箭头 */
.vjs-big-play-button .vjs-icon-placeholder {
font-size: 1.63em;
}
/* 加载圆圈 */
.vjs-loading-spinner {
font-size: 2.5em;
width: 2em;
height: 2em;
border-radius: 1em;
margin-top: -1em;
margin-left: -1.5em;
}