The videojs()
function doubles as the main function for users to create a
Player instance as well as the main library namespace.
It can also be used as a getter for a pre-existing Player instance.
However, we strongly recommend using videojs.getPlayer()
for this
purpose because it avoids any potential for unintended initialization.
Due to limitations of our JSDoc template, we cannot properly document this as both a function and a namespace, so its function signature is documented here.
Arguments
id
string|Element, required
Video element or video element ID.
options
Object, optional
Options object for providing settings. See: Options Guide.
ready
Component~ReadyCallback, optional
A function to be called when the Player and Tech are ready.
Return Value
The videojs()
function returns a Player instance.
Classes
Members
-
static bind :function
-
Deprecated reference to the fn.bind_ function
- Deprecated:
-
- Deprecated and will be removed in 9.0. Please use native Function.prototype.bind instead.
- See:
-
- fn.bind_
-
static browser :Object
-
A reference to the browser utility module as an object.
- See:
-
static createTimeRange :function
-
Deprecated reference to the createTimeRanges function
- Deprecated:
-
- Deprecated and will be removed in 9.0. Please use videojs.time.createTimeRanges instead.
- See:
-
static createTimeRanges :function
-
Deprecated reference to the createTimeRanges function
- Deprecated:
-
- Deprecated and will be removed in 9.0. Please use videojs.time.createTimeRanges instead.
- See:
-
static defineLazyProperty :function
-
Deprecated reference to the defineLazyProperty function
- Deprecated:
-
- Deprecated and will be removed in 9.0. Please use videojs.obj.defineLazyProperty instead.
- See:
-
static dom :Object
-
A reference to the DOM utility module as an object.
- See:
-
static fn :Object
-
A reference to the fn utility module as an object.
- See:
-
static formatTime :function
-
Deprecated reference to the formatTime function
- Deprecated:
-
- Deprecated and will be removed in 9.0. Please use videojs.time.format instead.
- See:
-
static isCrossOrigin :function
-
Deprecated reference to the Url.isCrossOrigin function
- Deprecated:
-
- Deprecated and will be removed in 9.0. Please use videojs.url.isCrossOrigin instead.
- See:
-
static log :function
-
A reference to the log utility module as an object.
- See:
-
static mergeOptions :function
-
Deprecated reference to the merge function
- Deprecated:
-
- Deprecated and will be removed in 9.0. Please use videojs.obj.merge instead.
- See:
-
static num :Object
-
A reference to the num utility module as an object.
- See:
-
static obj :Object
-
A reference to the obj utility module as an object.
- See:
-
static options :Object
-
The global options object. These are the settings that take effect if no overrides are specified when the player is created.
-
static parseUrl :function
-
Deprecated reference to the Url.parseUrl function
- Deprecated:
-
- Deprecated and will be removed in 9.0. Please use videojs.url.parseUrl instead.
- See:
-
static players :Object
-
Global enumeration of players.
The keys are the player IDs and the values are either the Player instance or
null
for disposed players. -
static resetFormatTime :function
-
Deprecated reference to the resetFormatTime function
- Deprecated:
-
- Deprecated and will be removed in 9.0. Please use videojs.time.resetFormat instead.
- See:
-
static setFormatTime :function
-
Deprecated reference to the setFormatTime function
- Deprecated:
-
- Deprecated and will be removed in 9.0. Please use videojs.time.setFormat instead.
- See:
-
static str :Object
-
A reference to the str utility module as an object.
- See:
-
- str
-
static time :Object
-
A reference to the time utility module as an object.
- See:
-
static url :Object
-
A reference to the URL utility module as an object.
- See:
-
static VERSION :string
-
Current Video.js version. Follows semantic versioning.
Methods
-
static addLanguage(code, data) → {Object}
-
Adding languages so that they're available to all players. Example:
videojs.addLanguage('es', { 'Hello': 'Hola' });
Parameters:
Name Type Description code
string The language code or dictionary property
data
Object The data values to be translated
Returns:
Object -The resulting language dictionary object
-
static deregisterPlugin(name)
-
De-register a Video.js plugin.
Parameters:
Name Type Description name
string The name of the plugin to be de-registered. Must be a string that matches an existing plugin.
Throws:
-
If an attempt is made to de-register the base plugin.
- Type
- Error
-
-
static getAllPlayers() → {Array}
-
Returns an array of all current players.
Returns:
Array -An array of all players. The array will be in the order that
Object.keys
provides, which could potentially vary between JavaScript engines. -
static getComponent(name) → {Component}
-
Get a
Component
based on the name it was registered with.Parameters:
Name Type Description name
string The Name of the component to get.
-
static getPlayer(id) → {Player|undefined}
-
Get a single player based on an ID or DOM element.
This is useful if you want to check if an element or ID has an associated Video.js player, but not create one if it doesn't.
Parameters:
Name Type Description id
string | Element An HTML element -
<video>
,<audio>
, or<video-js>
- or a string matching theid
of such an element.Returns:
Player | undefined -A player instance or
undefined
if there is no player instance matching the argument. -
static getPlayers() → {Object}
-
Get an object with the currently created players, keyed by player ID
Returns:
Object -The created players
-
static getPlugin(name)
-
Gets a plugin by name if it exists.
Parameters:
Name Type Description name
string The name of a plugin.
Returns:
-
static getPlugins(namesopt) → {Object|undefined}
-
Gets an object containing multiple Video.js plugins.
Parameters:
Name Type Attributes Description names
Array <optional>
If provided, should be an array of plugin names. Defaults to all plugin names.
Returns:
Object | undefined -An object containing plugin(s) associated with their name(s) or
undefined
if no matching plugins exist). -
static getPluginVersion(name) → {string}
-
Gets a plugin's version, if available
Parameters:
Name Type Description name
string The name of a plugin.
Returns:
string -The plugin's version or an empty string.
-
static getTech(name) → {Tech|undefined}
-
Get a
Tech
from the shared list by name.Parameters:
Name Type Description name
string camelCase
orTitleCase
name of the Tech to get -
static off(elem, typeopt, fnopt)
-
Removes event listeners from an element
Parameters:
Name Type Attributes Description elem
Element | Object Object to remove listeners from.
type
string | Array.<string> <optional>
Type of listener to remove. Don't include to remove all events from element.
fn
function <optional>
Specific listener to remove. Don't include to remove listeners for an event type.
-
static on(elem, type, fn)
-
Add an event listener to element It stores the handler function in a separate cache object and adds a generic handler to the element's event, along with a unique id (guid) to the element.
Parameters:
Name Type Description elem
Element | Object Element or object to bind listeners to
type
string | Array.<string> Type of event to bind to.
fn
function Event listener.
-
static one(elem, type, fn)
-
Trigger a listener only once for an event.
Parameters:
Name Type Description elem
Element | Object Element or object to bind to.
type
string | Array.<string> Name/type of event
fn
Event~EventListener Event listener function
-
static plugin(name, plugin)
-
Deprecated method to register a plugin with Video.js
Parameters:
Name Type Description name
string The plugin name
plugin
Plugin | function The plugin sub-class or function
- Deprecated:
-
- Deprecated and will be removed in 9.0. Use videojs.registerPlugin() instead.
-
static registerComponent(name, comp) → {Component}
-
Register a component so it can referred to by name. Used when adding to other components, either through addChild
component.addChild('myComponent')
or through default children options{ children: ['myComponent'] }
.NOTE: You could also just initialize the component before adding.
component.addChild(new MyComponent());
Parameters:
Name Type Description name
string The class name of the component
comp
Component The component class
-
static registerPlugin(name, plugin)
-
Register a Video.js plugin.
Parameters:
Name Type Description name
string The name of the plugin to be registered. Must be a string and must not match an existing plugin or a method on the
Player
prototype.plugin
Returns:
-
static registerTech(name, tech)
-
Registers a
Tech
into a shared list for videojs.Parameters:
Name Type Description name
string Name of the
Tech
to register.tech
Object The
Tech
class to register. -
static trigger(elem, event, hashopt) → {boolean|undefined}
-
Trigger an event for an element
Parameters:
Name Type Attributes Description elem
Element | Object Element to trigger an event on
event
EventTarget~Event | string A string (the type) or an event object with a type attribute
hash
Object <optional>
data hash to pass along with the event
Returns:
boolean | undefined -Returns the opposite of
defaultPrevented
if default was prevented. Otherwise, returnsundefined
-
static use(type, middleware)
-
Define a middleware that the player should use by way of a factory function that returns a middleware object.
Parameters:
Name Type Description type
string The MIME type to match or
"*"
for all MIME types.middleware
MiddlewareFactory A middleware factory function that will be executed for matching types.
-
static xhr(options) → {XMLHttpRequest|XDomainRequest}
-
A cross-browser XMLHttpRequest wrapper.
Parameters:
Name Type Description options
Object Settings for the request.
Returns:
XMLHttpRequest | XDomainRequest -The request object.