video.js是一款基于HTML5的网络视频播放器。它支持HTML5和Flash视频,以及YouTube和Vimeo(通过插件)。支持在桌面和移动设备上播放视频。这个项目从2010年中期开始,现已经在40多万个网站上使用。
快速开始
感谢Fastly的杰出人士,任何人都可以使用免费的CDN托管版Video.js。将这些标签添加到您的文档中<head>
<link href="//vjs.zencdn.net/5.19/video-js.min.css" rel="stylesheet">
<script src="//vjs.zencdn.net/5.19/video.min.js"></script>
有关要使用的最新版本的video.js和URL,请查看我们网站上的入门页面。
在vjs.zencdn.net
CDN托管版本的Video.js中,我们包含一个精简的Google Analytics(分析)像素,用于跟踪从CDN加载的随机抽样(当前为1%)的玩家。这使我们能够(粗略地)看到哪些浏览器正在使用,以及其他有用的指标,如操作系统和设备。如果您想停用分析功能,则可以在通过免费CDN添加Video.js之前简单包含以下全局内容:
<script>window.HELP_IMPROVE_VIDEOJS = false;</script>
或者,您可以通过从npm获取Video.js ,从GitHub发布下载或通过unpkg或CDNjs等其他JavaScript CDN获取Video.js。这些版本不包括Google Analytics跟踪。
<!-- unpkg -->
<link href="https://unpkg.com/video.js/dist/video-js.css" rel="stylesheet">
<script src="https://unpkg.com/video.js/dist/video.js"></script>
<!-- cdnjs -->
<link href="https://cdnjs.cloudflare.com/ajax/libs/video.js/6.3.3/video-js.css" ref="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/video.js/6.3.3/video.js"></script>
接下来,使用video.js与创建<video>
元素一样简单,但是有一个附加的data-setup
属性,该属性必须有个值{}
,可以包含任何Video.js 选项 - 只要确保它包含有效的JSON!
<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">
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>
当页面加载时,Video.js会找到这个元素并自动设置一个播放器。
如果你不想使用自动设置,你可以忽略data-setup
属性,并用videojs
函数初始化<video>
元素.
该videojs函数还接受一个options对象和一个回调,当播放器准备好时,回调函数将被调用。
var options = {};
var player = videojs('my-player', options, function onPlayerReady() {
videojs.log('Your player is ready!');
// In this context, `this` is the player that was created by Video.js.
this.play();
// How about an event listener?
this.on('ended', function() {
videojs.log('Awww...over so soon?!');
});
});
language
videojs使用json对象来描述语言,对象的键为英语,对应的值是目标语言。翻译在lang/目录下,文件名称是标准语言代码
,例如es.json是西班牙语.
除了video.js提供的独立脚本,API支持通过addLanguage方法手动定义新语言。其需要两个参数 标准语言代码
, 语言定义对象
:
videojs.addLanguage('es', {
Play: 'Reproducción',
Pause: 'Pausa',
'Current Time': 'Tiempo reproducido',
'Duration Time': 'Duración total',
'Remaining Time': 'Tiempo restante',
...
});
如果对象包含以前翻译过的字符串,addLanguage()将覆盖现有的翻译。然而,已经本地化的文本将不会在生成之后更新。
使用
videojs的有多个翻译在lang目录下,为需要支持的每种语言添加lang脚。
<script src="//example.com/path/to/video.min.js"></script>
<script src="//example.com/path/to/lang/es.js"></script>
除了向Video.js本身提供语言外,Player
还可以通过以下languages
选项为各个实例提供自定义语言支持:
// Provide a custom definition of Spanish to this player.
videojs('my-player', {
languages: {
es: {
Play: 'Reproducir'
}
}
});
设置播放器语言
播放器使用的语言可以通过language选项来设置
// Set the language to Spanish for this player.
videojs('my-player', {
language: 'es'
});
该播放器的语言方法可用于在实例化后设置语言('es')。但是,这通常是没有用的,因为它不更新已经存在的文本。
确定播放器语言
播放器语言通过以下优先级确定:
- 选项中指定的语言
- 在播放器元素上由
lang
属性指定的 - 由最近的带lang属性的父元素指定的语言,向上包括<html>元素。
- 浏览器语言偏好设置;如果配置多个,则使用第一个语言。
- 英语
内部语言选择
语言代码被认为是不区分大小写的(例如en-US
== en-us
)。
如果没有与子代码(例如en-us
)匹配的语言代码,则使用可用的匹配的主代码(例如en)。
videojs使用技巧
https://www.awaimai.com/2053.html