Componente VJS
EXTENDE : vjs.CoreObject
DEFINIDO EN : src/js/component.js#L35
Clase de componente de UI base
Los componentes son objetos de IU incrustables que están representados tanto por un objeto javascript como por un elemento del DOM. Pueden ser hijos de otros componentes y pueden tener muchos hijos ellos mismos.
// agregando un boton al reproductor
botón var = jugador.addChild('botón');
boton.el(); // -> elemento de botón
<div class="video-js">
<div class="vjs-button">Button</div>
</div>
Los componentes también son emisores de eventos.
botón.on('clic', función(){
console.log('¡Botón presionado!');
});
button.trigger('evento personalizado');
ÍNDICE
MÉTODOS
addChild (child, [opciones])
Añade un componente hijo dentro de este componente
miComponente.el(); // -> < div class='mi-componente'>< /div> miComponente.niños(); // [matriz vacía] var myButton = myComponent.addChild('MyButton'); // -> < div class='mi-componente'>< div class="mi-boton"> miBoton< división>< /div> // -> miBotón === miComponente.niños()[0];
Pasar opciones para constructores secundarios y opciones para hijos del niño
var miBotón = miComponente.addChild('MiBotón', { texto: 'Presionarme', niños: { buttonChildEjemplo: { buttonChildOption: verdadero } } });
PARÁMETROS:
-
cadena secundario|VJS.Component Nombre
de clase o instancia de un hijo que se va a agregar - options
Object
(OPCIONAL) Opciones, incluidas las opciones que se pasarán a los hijos del hijo.
DEVUELVE:
vjs.component
El componente hijo (creado por este proceso si se ha utilizado una cadena)
definido en : src/js/component.js#L343
Agregar clase (clase para agregar)
Agregar un nombre de clase CSS al elemento del componente
PARÁMETROS:
- ClassToAdd
String
Classname para agregar
DEVUELVE:
Componente VJS
definido en : src/js/component.js#L628
Crear clase CSS ()
Permite que los subcomponentes apilen nombres de clase CSS
DEVUELVE:
String
El nombre de la clase construida
definido en : src/js/component.js#L471
niños ()
Obtenga una matriz de todos los componentes secundarios
var niños = miComponente.niños();
DEVUELVE:
Array
Los niños
definido en : src/js/component.js#L277
contenido en el ()
Devuelve el elemento DOM del componente para incrustar contenido. Será el_ o un nuevo elemento definido en CreateEl.
DEVUELVE:
Elemento
definido en : src/js/component.js#L220
CreaEl ([nombre de etiqueta], [atributos])
Cree el elemento DOM del componente
PARÁMETROS:
- tagName
Cadena
(OPCIONAL) Tipo de nodo del elemento. por ejemplo, 'div' - atributos
Objeto
(OPCIONAL) Un objeto de atributos de elemento que debe establecerse en el elemento
DEVUELVE:
Elemento
definido en : src/js/component.js#L190
dimensiones (ancho, alto)
Establecer la anchura y la altura al mismo tiempo
PARÁMETROS:
- ancho
Número|Cadena
- altura
Número|Cadena
DEVUELVE:
vjs.component
El componente
definido en : src/js/component.js#L737
disable ()
Desactiva el componente haciendo que no se muestre
definido en : src/js/component.js#L691
disponer ()
Elimine el componente y todos los componentes secundarios
definido en : src/js/component.js#L74
el ()
Obtener el elemento DOM del componente
var domEl = miComponente.el();
DEVUELVE:
Elemento
definido en : src/js/component.js#L201
getChild (nombre)
Devuelve un componente secundario con el nombre proporcionado
PARÁMETROS:
- nombre
DEVUELVE:
Componente VJS
definido en : src/js/component.js#L311
getChildById (id)
Devuelve un componente secundario con el identificador proporcionado
PARÁMETROS:
- id
DEVUELVE:
Componente VJS
definido en : src/js/component.js#L294
height ([num], [Skiplisteners])
Obtener o establecer la altura del componente (valores CSS)
La configuración de los valores de dimensión de las etiquetas de vídeo solo funciona con valores en píxeles. Los valores porcentuales no funcionarán. Se pueden utilizar algunos porcentaje, pero width () /height () devolverá el número +%, no el ancho/alto calculados reales.
PARÁMETROS:
- num
Número|Cadena
(OPCIONAL) Altura del nuevo componente - skipListeners
Booleano
(OPCIONAL) Saltar el activador del evento de cambio de tamaño
DEVUELVE:
vjs.component
Este componente, al configurar la alturaNúmero|String
La altura, al obtener
definido en : src/js/component.js#L726
hide ()
Ocultar el elemento componente si se muestra actualmente
DEVUELVE:
Componente VJS
definido en : src/js/component.js#L659
id ()
Obtener el ID del componente
var id = miComponente.id();
DEVUELVE:
cuerda
definido en : src/js/component.js#L239
init (reproductor, opciones, listo)
la función constructora de la clase
PARÁMETROS:
- jugador
- opciones
- listo
definido en : src/js/component.js#L41
Init Niños ()
Agregar e inicializar componentes secundarios predeterminados desde las opciones
// cuando se crea una instancia de MyComponent, todos los hijos en opciones // se agregará a la instancia por sus cadenas de nombre y opciones MiComponente.prototipo.opciones_.niños = { myChildComponent: { myChildOption: verdadero } }
definido en : src/js/component.js#L439
nombre ()
Obtén el nombre del componente. El nombre se utiliza a menudo para hacer referencia al componente.
var nombre = miComponente.nombre();
DEVUELVE:
cuerda
definido en : src/js/component.js#L258
off ([type], [fn])
Eliminar un detector de eventos del elemento del componente
myComponent.off("nombreEvento", myFunc);
PARÁMETROS:
- tipo
Cadena
(OPCIONAL) Tipo de evento. Sin tipo, eliminará a todos los oyentes. - fn
Función
(OPCIONAL) Oyente de eventos. Sin fn, eliminará todos los oyentes de un tipo.
DEVUELVE:
Componente VJS
definido en : src/js/component.js#L510
on (tipo, fn)
Agregar un detector de eventos al elemento de este componente
var myFunc = function(){ var myPlayer = this; // Hacer algo cuando se dispara el evento }; myPlayer.on("nombreEvento", myFunc);
El contexto será el componente.
PARÁMETROS:
- type
String
El tipo de evento, por ejemplo, 'clic' - fn
Function
El detector de eventos
DEVUELVE:
vjs.componente
auto
definido en : src/js/component.js#L496
one (tipo, fn)
Añadir un detector de eventos para activarlo solo una vez y luego eliminarlo
PARÁMETROS:
- type
String Tipo de
evento - fn
Función de escucha de
eventos
DEVUELVE:
Componente VJS
definido en : src/js/component.js#L522
opciones (obj)
Fusión profunda de objetos de opciones
Siempre que una propiedad sea un objeto en ambos objetos options, las dos propiedades se fusionarán utilizando vjs.obj.DeepMerge.
Se utiliza para combinar opciones de componentes secundarios. Queremos que sea fácil anular las opciones individuales de un componente secundario sin tener que volver a escribir todas las demás opciones predeterminadas.
Padre.prototipo.opciones_ = { niños: { 'childOne': { 'foo': 'bar', 'asdf': 'fdsa' }, 'niñoDos': {}, 'niñoTres': {} } } nuevasOpciones = { niños: { 'niñoUno': { 'foo': 'baz', 'abc': '123' } 'niñoDos': nulo, 'niñoCuatro': {} } } this.options(nuevasOpciones);
RESULTADO
{ niños: { 'niñoUno': { 'foo': 'baz', 'asdf': 'fdsa', 'abc': '123' }, 'childTwo': nulo, // Deshabilitado. No se inicializará. 'niñoTres': {}, 'niñoCuatro': {} } }
PARÁMETROS:
- obj
Objeto
Objeto de nuevos valores de opción
DEVUELVE:
Objeto NUEVO objeto de esto.opciones_ y obj fusionados
definido en : src/js/component.js#L169
jugador ()
Devolver el reproductor del componente
DEVUELVE:
VJS. Reproductor
definido en : src/js/component.js#L116
listo (fn)
Vincular un agente de escucha al estado listo del componente
A diferencia de los oyentes de eventos, ya que si el evento listo ya ha ocurrido, activará la función inmediatamente.
PARÁMETROS:
- fn
Función
Oyente listo
DEVUELVE:
Componente VJS
definido en : src/js/component.js#L581
RemoveChild (componente)
Eliminar un componente hijo de la lista de hijos de este componente y el elemento del componente hijo del elemento de este componente
PARÁMETROS:
- componente
vjs.componente
componente que se va a quitar
definido en : src/js/component.js#L401
Quitar clase (clase para quitar)
Eliminar un nombre de clase CSS del elemento del componente
PARÁMETROS:
- ClassToRemove
String
Classname para eliminar
DEVUELVE:
Componente VJS
definido en : src/js/component.js#L639
show ()
Mostrar el elemento componente si está oculto
DEVUELVE:
Componente VJS
definido en : src/js/component.js#L649
trigger (tipo, evento)
Activar un evento en un elemento
myComponent.trigger('nombreEvento');
PARÁMETROS:
- type
String
El tipo de evento que se va a activar, por ejemplo, «clic» - event
Event|Objeto
El objeto de evento que se va a pasar al agente de escucha
DEVUELVE:
vjs.componente
auto
definido en : src/js/component.js#L536
Listo para activadores ()
Activa a los oyentes listos
DEVUELVE:
Componente VJS
definido en : src/js/component.js#L600
width ([num], Skiplisteners)
Establecer u obtener el ancho del componente (valores CSS)
La configuración de los valores de dimensión de las etiquetas de vídeo solo funciona con valores en píxeles. Los valores porcentuales no funcionarán. Se pueden utilizar algunos porcentaje, pero width () /height () devolverá el número +%, no el ancho/alto calculados reales.
PARÁMETROS:
- num
Número|Cadena
(OPCIONAL) Número de ancho opcional - skipListeners
Boolean
Saltar el activador del evento 'redimensionar'
DEVUELVE:
vjs.component
Este componente, al configurar la anchuraNúmero|String
El ancho, al obtener
definido en : src/js/component.js#L709
EVENTOS
cambiar tamaño EVENT
Disparado cuando cambian la anchura y/o la altura del componente
definido en : src/js/component.js#L816