提神:本文档仅提供可用选项的参考。要了解何如向 Video.js 传递选项巨乳 動画,请参阅“Video.js 诞生属性”。
范例 < video> 元素选项这些选项中的每一个也可作为范例 <video> 元素属性使用;因此,不错用诞生指南中轮廓的通盘三种口头来界说它们。频繁情况下,默许值不会列出,因为这是由浏览器供应商决定的。
autoplay类型:boolean巨乳 動画|string 注1:此时,自动播放属性和选项并不成保证视频会自动播放。注 2:若是媒体元素上有属性,该选项将被忽略。注 3:不成在属性中传递字符串值,必须在 videojs 选项中传递
您应向 videojs 函数传递一个自动播放选项,而不是使用自动播放属性。以下值均灵验:
布尔值为 false:与视频元素上莫得属性推敲,不会自动播放
布尔值为 true:与视频元素上有属性推敲,将使用浏览器自动播放
字符串值 "muted":将视频元素静音,然后在加载脱手时手动调用 play(),这很可能灵验。
字符串值为 "play":将在 loadstart 时调用 play(),类似于浏览器的自动播放功能。
字符串值为 "any":将在 loadstart 时调用 play(),若是欢跃被拒却,将使视频元素静音,然后调用 play()。
要传递选项
var player = videojs('my-video', { autoplay: 'muted' }); // or player.autoplay('muted');
全球告白位-前端
controlBar.remainingTimeDisplay.displayNegative类型:boolean
默许情况下,剩余时候知道为负数。要不知道负号,请将 controlBar.remainingTimeDisplay.displayNegative 设为 false。
controls类型:boolean
确定播放器是否有用户不错进行交互的控件。若是莫得控件,脱手播放视频的唯独步履即是使用自动播放属性或通过播放器 API。
height类型:string|number
以像素为单元诞生视频播放器的知道高度。
loop类型:boolean
轮回播放,使视频驱散后立即从头脱手。
muted类型:boolean
默许情况下将静音。
poster类型:string
视频脱手播放前知道的图像的 URL。频繁是视频的一帧或自界说标题屏幕。一朝用户点击 "播放",图片就会隐没。
preload类型:string
向浏览器提出是否应在加载 <video> 元素后立即脱手下载视频数据。扶持的值有:
'auto'
立即脱手加载视频(若是浏览器扶持)。有些迁徙拓荒为了保护用户的带宽/数据使用,不会事前加载视频。这即是为什么该值被称为 "auto",而不是 "true" 这么更明确的值。
这每每是最常见和最保举的值,因为它允许浏览器选拔最好步履。
'metadata'
只加载视频的元数据,包括视频的时长和尺寸等信息。偶然,元数据理会过下载几帧视频来加载。
'none'
不预载任何数据。浏览器会比及用户点击 "播放 "时才脱手下载。
src类型:string
要镶嵌的视频源的源 URL。
width类型:string|number
以像素为单元诞生视频播放器的知道宽度。
全球告白位-前端
Video.js 罕见选项除非另有说明,不然每个选项默许为未界说。
aspectRatio类型:string
将播放器诞生为流体模式,该值用于狡计播放器的动态尺寸。该值应代表一个比例 - 用冒号分隔的两个数字(如 "16:9 "或 "4:3")。
或者,也不错在播放器中添加名为 vjs-16-9、vjs-9-16、vjs-4-3 或 vjs-1-1 的 class。
audioOnlyMode类型:boolean
默许值:false
若是诞生为 true,则会异步荫藏除适度栏之外的通盘播放器组件,以及仅在视频时才需要的任何特定控件。该选项可在运行时调用 audioOnlyMode([true|false]) 诞生为 true 或 false。行为为诞生器使用时,它会复返一个 Promise。当用作 getter 时,它复返一个布尔值。
audioPosterMode类型:boolean
默许:false
若是诞生为 "true",则理会过荫藏视频元素和执续知道海报图像来启用海报检察器体验。该选项可通过在运行时调用 audioPosterMode([true|false]) 诞生为 true 或 false。
autoSetup类型:boolean
退守播放器为带有 data-setup 属性的媒体元素运行自动诞生。
提神:必须在加载 videojs 源的并吞个 tick 中使用 videojs.options.autoSetup = false 全局诞生智力收效。
breakpoints类型:Object
与响应式选项沿途使用时,可诞生断点,以建树如安在播放器上切换类名,从而把柄播放器的尺寸调度用户界面。
默许情况下,断点为:
class称号
宽度规模
vjs-layout-tiny
0-210
vjs-layout-x-small
211-320
vjs-layout-small
321-425
vjs-layout-medium
426-768
vjs-layout-large
769-1440
vjs-layout-x-large
1441-2560
vjs-layout-huge
2561+
诚然不成革新 class 名,但不错通过类似这么的对象来建树宽度规模:
breakpoints: { tiny: 300, xsmall: 400, small: 500, medium: 600, large: 700, xlarge: 800, huge: 900 }
去掉 vjs-layout- 前缀和任何"-"字符后,breakpoints 对象的键是从接洽 class 名派生出来的。
breakpoints 对象的值界说了规模的最大宽度。
并非通盘键齐需要界说。您不错通过传递包含一个键/值对的对象,毛糙隐秘单个断点!创建播放器时,自界说断点将与默许断点合并。
当播放器的大小发生变化时,合并的断点将按照大小律例进行检讨,直到找到匹配的断点。
该断点的接洽 class 名将作为一个 class 添加到播放器中。之前断点的 class 将被移除。
请参阅文献 sandbox/responsive.html.example,了解使用默许断点的响应式播放器示例。
children类型:Array|Object
该选项剿袭自 Component 基类。
disablePictureInPicture类型:boolean
若是为 true,则禁用将视频元素切换为画中画。默许为 false。
这对 Firefox 莫得影响,因为 Firefox 驱散的私有画中画模式莫得驱散范例的画中画 API。
这不会禁用允许播放器元素参预画中画窗口的文档画中画模式。
enableDocumentPictureInPicture类型:boolean
自 8.3.0 起
若是为 "true",则将使用 documentPictureInPicture API(若是可用)驱散画中画。默许为 false,但当该功能成立后,默许值可能会变为 true。
当今,Chrome 浏览器 111+ 提供了该功能的试用版。
这种画中画模式与夙昔的模式不同,在这种模式下,通盘这个词播放器元素齐是窗口化的,而不单是是视频自己。在某些情况下,允许在播放器上画中画而不允许仅在视频上画中画(如告白、访佛),因此 disablePictureInPicture 选项仅禁用视频上的老式画中画模式。
enableSmoothSeeking类型:boolean
默许:false
自 8.9.0 起
若是诞生为 true,将在迁徙和桌面拓荒上提供更通顺的搜索体验。
全球告白位-前端
以下操作将启用平滑搜索:
videojs('my-player', { enableSmoothSeeking: true });
也可在创建播放器后进行修改:
var player = videojs('my-player'); player.options({ enableSmoothSeeking: true });experimentalSvgIcons
类型:boolean
自 8.5.0 起
若是诞生为 "true",通盘这个词播放器中使用的 videojs/font 图标将被存储在 Video.js 中的 SVG 取代。默许值为 false,但当该功能成立后,默许值可能会变为 true。
这些 SVGs 下载自 Font Awesome 和 Google 的 Material UI。
将 sandbox/svg-icons.html.example 重定名为 sandbox/svg-icons.html,使用 npm run build 构建 Video.js,然后在所选浏览器中开放 sandbox/svg-icons.html,即可检察通盘可用图标。
图标应在自界说播放器时使用 setIcon 步履添加到播放器里面的组件中。
fluid类型:boolean
为 true 时,Video.js 播放器的尺寸将是流动的。换句话说,它将按照视频固有的宽高比或指定的宽高比缩放以相宜其容器。
此外,若是 <video> 元素具有 "vjs-fluid",此选项将自动设为 true。
fullscreen类型:Object
默许:{options: {navigationUI: 'hide'}
fullscreen.options 可用于传递特定的全屏选项。在某些情况下,它将与元素和贬责要领沿途增强更多功能。
options
类型:Object
默许:{navigationUI: 'hide'}
更多细目,请参阅全屏 API 范例。
id
类型:string
若是提供,且元素还莫得 id,则此值将用作播放器元素的 id。
inactivityTimeout类型:number
Video.js 通过 "vjs-user-active" 和 "vjs-user-inactive" 类以及 "useractive" 事件来示意用户正在与播放器交互。
不行为超时(inactivityTimeout)决定了在晓谕用户不行为之前需要几许毫秒的不行为时候。值为 0 示意莫得 inactivityTimeout,用户永远不会被视为不行为。
language类型:string
默许:浏览器默许谈话或 "en
与播放器中可用谈话之一相匹配的谈话代码。这将诞生播放器的运行谈话,但不错随时革新。
了解接洽 Video.js 中谈话的更多信息(https://videojs.com/guides/languages/)。
languages类型:Object
自界说播放器中可用的谈话。该对象的键将是谈话代码,值将是具有英文键和翻译值的对象。
了解接洽 Video.js 中谈话的更多信息(https://videojs.com/guides/languages)
提神:一般情况下不需要此选项,最好将自界说谈话传递给 videojs.addLanguage(),这么通盘播放器齐能使用这些谈话!
liveui类型:boolean
默许:false
允许播放器使用新的及时界面,其中包括:
用于在及时窗口内寻路的程度条
一个按钮,点击后会知道一个圆圈,示意是否在及时角落。
若是莫得该选项,程度条将被荫藏,拔帜易帜的是示意及时播放的翰墨。在改日版块中,liveui 将默许为 true!
liveTracker.trackingThreshold类型:number
默许:20
播放器 liveTracker 组件的一个选项,用于适度何时知道 liveui。默许情况下,若是流媒体的寻谈时候少于 20 秒,那么即使诞生了 liveui 选项,咱们也不会知道新的 liveui。
liveTracker.liveTolerance类型:number
默许:15
播放器 liveTracker 组件的一个选项,用于适度距离可寻址端多远的执行应被视为及时播放。默许情况下,距离及时搜索角落跳跃 15 秒的执行将被视为过期于及时执行,而其他执行则被视为及时执行。任何向后搜索的用户交互齐将忽略该值,正如用户所盼望的那样。
nativeControlsForTouch类型:boolean
明确诞生接洽工夫选项的默许值。
normalizeAutoplay类型:boolean
指定是否应将诞生 autoplay:true 和 <video autoplay> 与诞生 autoplay:'play'(自动播放)同等对待,也即是说,应从视频元素中移除(或不添加)autoplay 属性,并由 Video.js 而不是浏览器手动启动 play()。
全球告白位-前端
notSupportedMessage类型:string
允许隐秘 Video.js 无法播放媒体源时知道的默许信息。
noUITitleAttributes类型:boolean
默许:false
适度用户界面元素是否有 title 属性。title 属性会在鼠标悬停时知道,这对可用性很有匡助,但对可拜访性有不利影响。将 noUITitleAttributes 诞生为 true 不错退守在 UI 元素中添加 title 属性,从而允许插件或外部框架在控件中添加更易于拜访的器具教导。
playbackRates类型:Array
必须大于 0 的数字数组,其中 1 示意平淡速率(100%),0.5 示意半速(50%),2 示意双速(200%)等。若是指定了该数组,Video.js 将知道一个控件(class 为 vjs-playback-rate),允许用户从数组选项中选拔播放速率。这些选项将按指定律例从下往上知道。
举例:
videojs('my-player', { playbackRates: [0.5, 1, 1.5, 2] });playsinline
类型:boolean
自 6.1.0 起
当全屏播放是本机默许诞生(如在 iOS Safari 中)时,用于指导浏览器优先选拔非全屏播放。
2019一本大道香蕉大在线动漫举例:
videojs('my-player', { playsinline: true });plugins
类型:Object
该对象扶持在播放器运行化时使用自界说选项自动运行化插件,而无需手动运行化。
videojs('my-player', { plugins: { foo: {bar: true}, boo: {baz: false} } });
上述执行能够至极于:
var player = videojs('my-player'); player.foo({bar: true}); player.boo({baz: false});
不外,由于 plugins 选项是一个对象,因此运行化的律例无法保证!
接洽 Video.js 插件的更多信息,请参阅插件指南。
preferFullWindow类型:boolean
默许:false
将此诞生为 true 将篡改不扶持 HTML5 全屏 API 但扶持视频元素全屏的拓荒(如 iPhone)上的全屏步履。播放器将被拉伸以填充浏览器窗口,而不是使视频全屏。
responsive类型:boolean
默许:false
将此选项诞生为 true,播放器将把柄响应式断点(参见:断点选项)进行自界说。
若是该选项为 false(默许值),响应式断点将被忽略。
请提神,这是指播放器内控件的响应速率,而不是播放器自己的响应大小。对于这少许,请参阅流体。
restoreEl类型:boolean 或 Element
默许:false
若是诞生为 true,将在播放器启动前复制占位符元素。若是播放器被弃置,该副本将放回 DOM,取代播放器的位置。
若是诞生为 HTML 元素,则该元素将取代被弃置的播放器。
skipButtons类型:Object
自 8.2.0 起
skipButtons.forward类型:number
自 8.2.0 起
若是指定,Video.js 将知道一个控件,允许用户在视频中上前跳转指定的秒数。
以下值均灵验: 5 | 10 | 30
videojs('my-player', { controlBar: { skipButtons: { forward: 5 } } });skipButtons.backward
类型:number
自 8.2.0 起
若是指定了该值,Video.js 将知道一个控件,允许用户按指定秒数跳回视频。
以下数值灵验: 5 | 10 | 30
videojs('my-player', { controlBar: { skipButtons: { backward: 10 } } });sources
类型:Array
一个对象数组,它反应了腹地 <video> 元素领有一系列子 <source> 元素的功能。这应该是一个具有 src 和 type 属性的对象数组。举例:
videojs('my-player', { sources: [{ src: '//path/to/video.mp4', type: 'video/mp4' }, { src: '//path/to/video.webm', type: 'video/webm' }] });
使用 <source> 元素也会产生一样的后果:
<video ...> <source src="//path/to/video.mp4" type="video/mp4"> <source src="//path/to/video.webm" type="video/webm"> </video>suppressNotSupportedError
类型:boolean
若是诞生为 true,则不会立即触发 "无兼容源" 不实,而会在第一次用户交互时发生。这对于谷歌的 "迁徙友好(mobile friendly)" 测试器具相配有用,因为该器具无法播放视频,但您可能不但愿看到知道不实。
全球告白位-前端
techCanOverridePoster类型:boolean
允许工夫隐秘播放器的海报,并融入播放器的海报人命周期。当使用多个工夫时,每个工夫齐必须在播放新信号源时诞生我方的海报,这少许相配有用。
techOrder类型: Array
默许:['html5']
界说优先使用 Video.js 工夫的律例。默许情况下,优先使用 Html5 工夫。其他已注册的工夫将按照注册律例添加到该工夫之后。
userActions类型: Object
userActions.click类型:boolean | function
适度点击播放器/工夫的操作口头。若是诞生为 false,点击将被禁用,不再导致播放器在暂停和播放之间切换。若是使用 controls: false 禁用了控件,则不会调用贬责函数。
videojs('my-player', { userActions: { click: false } });
若是未界说或诞生为 true,则会启用点击,并在暂停和播放之间切换播放器。要隐秘默许的点击贬责,可将 userActions.click 诞生为可领受 click 事件的函数(在本例中,它将央求全屏,与userActions.doubleClick 推敲):
function myClickHandler(event) = { // `this` is the player in this context if (this.isFullscreen()) { this.exitFullscreen(); } else { this.requestFullscreen(); } }; videojs('my-player', { userActions: { click: myClickHandler } });userActions.doubleClick
类型:boolean|function
适度双击播放器/工夫的操作口头。若是诞生为 false,则禁用双击。若是未界说或诞生为 true,则启用双击并切换全屏模式。要隐秘默许的双击贬责口头,可将 userActions.doubleClick 诞生为可领受dblclick 事件的函数:
function myDoubleClickHandler(event) = { // `this` is the player in this context this.pause(); }; videojs('my-player', { userActions: { doubleClick: myDoubleClickHandler } });userActions.hotkeys
类型:boolean|function|object
适度播放器规模内热键的操作口头。若是诞生为 false 或未界说,热键将被禁用。若是诞生为 true 或一个对象(以便不才文中界说 fullscreenKey 等),热键将按下文所述启用。要隐秘默许的热键贬责口头,可将 userActions.hotkeys 诞生为可领受按键事件的函数。若是使用 controls: false 禁用了控件,则不会调用贬责函数。
var player = videojs('my-player', { userActions: { hotkeys: function(event) { // `this` is the player in this context // `x` key = pause if (event.which === 88) { this.pause(); } // `y` key = play if (event.which === 89) { this.play(); } } } });
默许热键贬责口头为:
快捷键
动作
启用
f
切换全屏
仅当适度栏中有全屏按钮时才启用
m
切换静音
长期启用,即使莫得适度栏亦然如斯
k
切换播放/暂停
长期启用,即使莫得适度栏亦然如斯
空格
切换播放/暂停
长期启用,即使莫得适度栏亦然如斯
热键最初需要取得播放器焦点。请提神,若是按钮和菜单等控件的键盘焦点在空格键上,则空格键会激活这些控件。其他热键的作用与播放器中哪个控件有焦点无关。
全球告白位-前端
userActions.hotkeys.fullscreenKey类型:function
隐秘全屏键界说。若是诞生为 true,则实行全屏切换操作。
var player = videojs('my-player', { userActions: { hotkeys: { muteKey: function(event) { // disable mute key }, fullscreenKey: function(event) { // override fullscreen to trigger when pressing the v key return (event.which === 86); } } } });userActions.hotkeys.muteKey
类型:function
隐秘静音键界说。若是诞生为 true,则实行静音切换操作。
userActions.hotkeys.playPauseKey类型:function
隐秘播放/暂停键界说。若是诞生了该值,函数将领受 keydown 事件;若是函数复返true,则实行播放/暂停切换操作。
vtt.js类型:string
允许隐秘 vtt.js 的默许 URL,该 URL 可异步加载,以团员对 WebVTT 的扶持。
此选项将用于 Video.js 的 "novtt" 构建(即 video.novtt.js)。不然,vtt.js 将与 Video.js 绑缚。
组件选项Video.js 播放器是一个组件。与通盘组件一样,您不错界说它包括哪些子组件、它们的知道律例以及传递给它们的选项。
本文仅供快速参考,接洽 Video.js 中组件的更多禁锢信息,请检察组件指南。
children类型 Array|Object
若是是 Arrau(默许值),则用于确定在播放器(或其他组件)上创建哪些子节点(按组件称号)以及创建的律例:
// The following code creates a player with ONLY bigPlayButton and // controlBar child components. videojs('my-player', { children: [ 'bigPlayButton', 'controlBar' ] });
children 选项也不错作为 Object 传递。在这种情况下,它用于为任何/通盘子代提供 options,包括使用 false 禁用它们:
// This player's ONLY child will be the controlBar. Clearly, this is not the // ideal method for disabling a grandchild! videojs('my-player', { children: { controlBar: { fullscreenToggle: false } } });${componentName}
类型:Object
可通过组件称号的小写字母变体(小写驼峰定名)为组件提供自界说选项(举例,controlBar 示意 ControlBar)。这些选项不错嵌套在子代关系中。举例,禁用全屏控件:
videojs('my-player', { controlBar: { fullscreenToggle: false } });
全球告白位-前端
工夫选项${techName}类型:Object
Video.js 回下班夫(即 "工夫")可作为传递给 videojs 函数的选项的一部分赋予自界说选项。这些选项应在工夫称号的小写变体(如 "html5")下传递。
html5nativeControlsForTouch类型:boolean
该选项仅受 Html5 工夫的扶持,可诞生为 true 以强制使用触摸拓荒的腹地控件。
nativeAudioTracks类型:boolean
可诞生为 false 以禁用原生音轨扶持。最常用于videojs-contrib-hls。
nativeTextTracks类型:boolean
可诞生为 false,以强制模拟文本轨迹,而非腹地扶持。nativeCaptions 选项也存在,但只是 nativeTextTracks 的别称。
nativeVideoTracks类型:boolean
可诞生为 false 以禁用腹地视频轨谈扶持。最常用于videojs-contrib-hls。
preloadTextTracks类型:boolean
可诞生为 false,以延伸加载非行为文本轨谈,直到使用为止。这可能会在切换字幕时变成褊狭的延伸巨乳 動画,在此时间可能会出现字幕缺失的情况。