new Plugin(player)
Creates an instance of this class.
Sub-classes should call super to ensure plugins are properly initialized.
Parameters:
| Name | Type | Description |
|---|---|---|
player |
Player |
A Video.js player instance. |
Fires:
- Player#event:beforepluginsetup
- Player#beforepluginsetup:$name
- Player#event:pluginsetup
- Player#pluginsetup:$name
Listens to Events:
Throws:
-
If attempting to instantiate the base Plugin class directly instead of via a sub-class.
- Type
- Error
Members
-
static BASE_PLUGIN_NAME :string
-
The name of the base plugin class as it is registered.
-
state :Object
-
A hash containing arbitrary keys and values representing the state of the object.
- Mixes In:
-
state :Object
-
A hash containing arbitrary keys and values representing the state of the object.
- Mixes In:
Methods
-
static deregisterPlugin(name)
-
De-register a Video.js plugin.
Parameters:
Name Type Description namestring 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 getPlugin(name)
-
Gets a plugin by name if it exists.
Parameters:
Name Type Description namestring The name of a plugin.
Returns:
-
static getPlugins(namesopt) → {Object|undefined}
-
Gets an object containing multiple Video.js plugins.
Parameters:
Name Type Attributes Description namesArray <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
undefinedif no matching plugins exist). -
static getPluginVersion(name) → {string}
-
Gets a plugin's version, if available
Parameters:
Name Type Description namestring The name of a plugin.
Returns:
string -The plugin's version or an empty string.
-
static isBasic(plugin) → {boolean}
-
Determines if a plugin is a basic plugin (i.e. not a sub-class of
Plugin).Parameters:
Name Type Description pluginstring | function If a string, matches the name of a plugin. If a function, will be tested directly.
Returns:
boolean -Whether or not a plugin is a basic plugin.
-
static registerPlugin(name, plugin)
-
Register a Video.js plugin.
Parameters:
Name Type Description namestring The name of the plugin to be registered. Must be a string and must not match an existing plugin or a method on the
Playerprototype.pluginReturns:
-
any(targetOrType, typeOrListener, listeneropt)
-
Add a listener to an event (or events) on this object or another evented object. The listener will only be called once for the first event that is triggered then removed.
Parameters:
Name Type Attributes Description targetOrTypestring | Array | Element | Object If this is a string or array, it represents the event type(s) that will trigger the listener.
Another evented object can be passed here instead, which will cause the listener to listen for events on _that_ object. In either case, the listener's `this` value will be bound to this object.typeOrListenerstring | Array | function If the first argument was a string or array, this should be the listener function. Otherwise, this is a string or array of event type(s).
listenerfunction <optional>
If the first argument was another evented object, this will be the listener function.
- Mixes In:
-
any(targetOrType, typeOrListener, listeneropt)
-
Add a listener to an event (or events) on this object or another evented object. The listener will only be called once for the first event that is triggered then removed.
Parameters:
Name Type Attributes Description targetOrTypestring | Array | Element | Object If this is a string or array, it represents the event type(s) that will trigger the listener.
Another evented object can be passed here instead, which will cause the listener to listen for events on _that_ object. In either case, the listener's `this` value will be bound to this object.typeOrListenerstring | Array | function If the first argument was a string or array, this should be the listener function. Otherwise, this is a string or array of event type(s).
listenerfunction <optional>
If the first argument was another evented object, this will be the listener function.
- Mixes In:
-
dispose()
-
Disposes a plugin.
Subclasses can override this if they want, but for the sake of safety, it's probably best to subscribe the "dispose" event.
Fires:
-
getEventHash(hashopt) → {Plugin~PluginEventHash}
-
Each event triggered by plugins includes a hash of additional data with conventional properties.
This returns that object or mutates an existing hash.
Parameters:
Name Type Attributes Default Description hashObject <optional>
{} An object to be used as event an event hash.
-
abstract handleStateChanged(e)
-
Handles "statechanged" events on the plugin. No-op by default, override by subclassing.
Parameters:
Name Type Description eEvent An event object provided by a "statechanged" event.
Properties
Name Type Description changesObject An object describing changes that occurred with the "statechanged" event.
-
off(targetOrTypeopt, typeOrListeneropt, listeneropt)
-
Removes listener(s) from event(s) on an evented object.
Parameters:
Name Type Attributes Description targetOrTypestring | Array | Element | Object <optional>
If this is a string or array, it represents the event type(s).
Another evented object can be passed here instead, in which case ALL 3 arguments are _required_.typeOrListenerstring | Array | function <optional>
If the first argument was a string or array, this may be the listener function. Otherwise, this is a string or array of event type(s).
listenerfunction <optional>
If the first argument was another evented object, this will be the listener function; otherwise, all listeners bound to the event type(s) will be removed.
- Mixes In:
-
off(targetOrTypeopt, typeOrListeneropt, listeneropt)
-
Removes listener(s) from event(s) on an evented object.
Parameters:
Name Type Attributes Description targetOrTypestring | Array | Element | Object <optional>
If this is a string or array, it represents the event type(s).
Another evented object can be passed here instead, in which case ALL 3 arguments are _required_.typeOrListenerstring | Array | function <optional>
If the first argument was a string or array, this may be the listener function. Otherwise, this is a string or array of event type(s).
listenerfunction <optional>
If the first argument was another evented object, this will be the listener function; otherwise, all listeners bound to the event type(s) will be removed.
- Mixes In:
-
on(targetOrType, typeOrListener, listeneropt)
-
Add a listener to an event (or events) on this object or another evented object.
Parameters:
Name Type Attributes Description targetOrTypestring | Array | Element | Object If this is a string or array, it represents the event type(s) that will trigger the listener.
Another evented object can be passed here instead, which will cause the listener to listen for events on _that_ object. In either case, the listener's `this` value will be bound to this object.typeOrListenerstring | Array | function If the first argument was a string or array, this should be the listener function. Otherwise, this is a string or array of event type(s).
listenerfunction <optional>
If the first argument was another evented object, this will be the listener function.
- Mixes In:
-
on(targetOrType, typeOrListener, listeneropt)
-
Add a listener to an event (or events) on this object or another evented object.
Parameters:
Name Type Attributes Description targetOrTypestring | Array | Element | Object If this is a string or array, it represents the event type(s) that will trigger the listener.
Another evented object can be passed here instead, which will cause the listener to listen for events on _that_ object. In either case, the listener's `this` value will be bound to this object.typeOrListenerstring | Array | function If the first argument was a string or array, this should be the listener function. Otherwise, this is a string or array of event type(s).
listenerfunction <optional>
If the first argument was another evented object, this will be the listener function.
- Mixes In:
-
one(targetOrType, typeOrListener, listeneropt)
-
Add a listener to an event (or events) on this object or another evented object. The listener will be called once per event and then removed.
Parameters:
Name Type Attributes Description targetOrTypestring | Array | Element | Object If this is a string or array, it represents the event type(s) that will trigger the listener.
Another evented object can be passed here instead, which will cause the listener to listen for events on _that_ object. In either case, the listener's `this` value will be bound to this object.typeOrListenerstring | Array | function If the first argument was a string or array, this should be the listener function. Otherwise, this is a string or array of event type(s).
listenerfunction <optional>
If the first argument was another evented object, this will be the listener function.
- Mixes In:
-
one(targetOrType, typeOrListener, listeneropt)
-
Add a listener to an event (or events) on this object or another evented object. The listener will be called once per event and then removed.
Parameters:
Name Type Attributes Description targetOrTypestring | Array | Element | Object If this is a string or array, it represents the event type(s) that will trigger the listener.
Another evented object can be passed here instead, which will cause the listener to listen for events on _that_ object. In either case, the listener's `this` value will be bound to this object.typeOrListenerstring | Array | function If the first argument was a string or array, this should be the listener function. Otherwise, this is a string or array of event type(s).
listenerfunction <optional>
If the first argument was another evented object, this will be the listener function.
- Mixes In:
-
setState(stateUpdates) → {Object|undefined}
-
Set the state of an object by mutating its state object in place.
Parameters:
Name Type Description stateUpdatesObject | function A new set of properties to shallow-merge into the plugin state. Can be a plain object or a function returning a plain object.
Fires:
Returns:
Object | undefined -An object containing changes that occurred. If no changes occurred, returns
undefined.- Mixes In:
-
setState(stateUpdates) → {Object|undefined}
-
Set the state of an object by mutating its state object in place.
Parameters:
Name Type Description stateUpdatesObject | function A new set of properties to shallow-merge into the plugin state. Can be a plain object or a function returning a plain object.
Fires:
Returns:
Object | undefined -An object containing changes that occurred. If no changes occurred, returns
undefined.- Mixes In:
-
trigger(event, hashopt) → {boolean}
-
Triggers an event on the plugin object and overrides EventedMixin.trigger.
Parameters:
Name Type Attributes Default Description eventstring | Object An event type or an object with a type property.
hashObject <optional>
{} Additional data hash to merge with a PluginEventHash.
Returns:
boolean -Whether or not default was prevented.
-
trigger(event, hashopt) → {boolean}
-
Fire an event on this evented object, causing its listeners to be called.
Parameters:
Name Type Attributes Description eventstring | Object An event type or an object with a type property.
hashObject <optional>
An additional object to pass along to listeners.
Returns:
boolean -Whether or not the default behavior was prevented.
- Mixes In:
-
trigger(event, hashopt) → {boolean}
-
Fire an event on this evented object, causing its listeners to be called.
Parameters:
Name Type Attributes Description eventstring | Object An event type or an object with a type property.
hashObject <optional>
An additional object to pass along to listeners.
Returns:
boolean -Whether or not the default behavior was prevented.
- Mixes In:
-
version()
-
Get the version of the plugin that was set on
.VERSION
Type Definitions
-
PluginEventHash
-
Properties:
Name Type Description instancestring For basic plugins, the return value of the plugin function. For advanced plugins, the plugin instance on which the event is fired.
namestring The name of the plugin.
pluginstring For basic plugins, the plugin function. For advanced plugins, the plugin class/constructor.
Events
-
dispose
-
Signals that a advanced plugin is about to be disposed.
Type: