Muestra de Brightcove Player: Jugador flotante

En este tema, aprenderá cómo configurar HTML, CSS y JavaScript en la página para permitir que el reproductor sea arrastrado a una nueva posición y luego arreglarlo allí (hasta que lo arrastre nuevamente). La posición del jugador permanecerá fija incluso cuando el usuario se desplace hacia arriba y hacia abajo en la página.

Ejemplo de jugador

Usando el signo más (+ ) en la parte superior izquierda del reproductor, arrastre el reproductor a una ubicación y suéltelo. Luego, deslice el texto de la página hacia arriba y hacia abajo y verá que el reproductor permanece fijo en su ubicación.

Ver la pluma 18195-jugador-flotante por Brightcove Learning Services ( rcrooks1969 ) en CodePen.

Código fuente

Ver el solución completa en GitHub.

Uso de CodePen

Estos son algunos consejos para utilizar eficazmente el CodePen anterior:

  • Cambie la visualización real del reproductor haciendo clic en el Result botón.
  • Haga clic en el HTML/CSS/JS botones para mostrar UNO de los tipos de código.
  • Más adelante, en este documento, la lógica, el flujo y el estilo utilizados en la aplicación se analizarán en la configuración de reproductor/HTML, Flujo de aplicaciones y Estilo de la aplicación. secciones. La mejor manera de seguir la información de estas secciones es:
    1. Haga clic en el EDIT ON CODEPEN en el CodePen y tenga el código disponible en un navegador / pestaña del navegador.
    2. En CodePen, ajusta el código que quieres que se muestre. Puede cambiar el ancho de las distintas secciones de código dentro de CodePen.
    3. Ver el Configuración de reproductor / HTML , Flujo de aplicación y / o Estilo de aplicación secciones en otra pestaña del navegador / navegador. Ahora podrá seguir las explicaciones del código y, al mismo tiempo, ver el código.

secuencia de desarrollo

Esta es la secuencia de desarrollo recomendada:

  1. Utilice la implementación del reproductor de incrustación en la página para probar la funcionalidad de su reproductor, complemento y CSS (si es necesario CSS)
  2. Coloque el JavaScript y CSS del plugin en archivos separados para pruebas locales
  3. Implementa el código del plugin y CSS en tu servidor una vez que hayas resuelto cualquier error.
  4. Usa Studio para agregar el plugin y CSS a tu reproductor
  5. Reemplace la implementación del reproductor de incrustación en página si determina que la implementación de iframe se ajusta mejor (se detalla en la siguiente sección)

Para obtener más información sobre estos pasos, consulte la sección Paso a paso: Guía de desarrollo de plugins.

iframe o incrustación en página

Al desarrollar mejoras para Brightcove Player, deberás decidir si el código se ajusta mejor a la implementación de iframe o incrustación en la página. La recomendación de práctica recomendada es crear un complemento para usarlo con una implementación de iframe. Las ventajas de utilizar el reproductor iframe son:

  • Sin colisiones con JavaScript y/o CSS existentes
  • Responde automáticamente
  • El iframe facilita el uso en aplicaciones de redes sociales (o siempre que el vídeo tenga que «viajar» a otras aplicaciones)

Aunque la integración del reproductor de incrustación en la página puede ser más compleja, hay ocasiones en que planificará el código en torno a esa implementación. Para generalizar, este enfoque es mejor cuando la página que contiene necesita comunicarse con el reproductor. En concreto, estos son algunos ejemplos:

  • El código de la página que contiene necesita escuchar y actuar en función de los eventos de los jugadores
  • El reproductor utiliza estilos de la página que lo contiene
  • El iframe hará que la lógica de la aplicación falle, como un redireccionamiento desde la página que contiene

Incluso si tu implementación final no utiliza el código iframe, puedes seguir usando el código de incrustación en la página con un plugin para tu JavaScript y un archivo separado para tu CSS. Esto encapsula tu lógica para que puedas utilizarla fácilmente en varios reproductores.

Recursos de API/plugins utilizados

En esta muestra no se utilizan recursos de Brightcove Player API. Todo es CSS y JavaScript.

Configuración de reproductor/HTML

En esta sección se detalla cualquier configuración especial necesaria durante la creación del reproductor. Además, se describen otros elementos HTML que deben agregarse a la página, más allá del código de implementación del reproductor de incrustación de la página.

Configuración del reproductor

No se requiere ninguna configuración especial para el reproductor de Brightcove que crea para este ejemplo.

Otros HTML

Un HTML <div> etiqueta envuelve el código del jugador.

Flujo de aplicaciones

La lógica básica detrás de esta aplicación es:

  • Cree un controlador de eventos para onmousedown evento (comenzar a arrastrar)
  • Cree un controlador de eventos para onmouseup evento (cayendo)
  • Cree un controlador de eventos para onmousemove evento (arrastrando)

Actuar con el mouse hacia abajo

Busque el código etiquetado:

// ### Act on mouse down ###

Se prepara para arrastrar al jugador y establece el controlador de eventos para onmousemove.

Actuar con el movimiento del mouse

Busque el código etiquetado:

// ### Act on mouse move ###

Realiza un seguimiento de la posición del mouse en la pantalla.

Actuar con el mouse hacia arriba

Busque el código etiquetado:

// ### Act on mouse up ###

Establece la posición del jugador y borra múltiples controladores de eventos, por ejemplo onmousemove.

Estilismo de aplicaciones

El CSS para #playerWrapper:before define el círculo con el signo de enchufe que se encuentra en la parte superior izquierda del reproductor. El CSS para #playerWrapper define el borde alrededor del reproductor.

Código de plugin

En esta muestra, no hay ningún complemento de Brightcove Player real, ya que no se utiliza ningún código de API de Brightcove Player. JavaScript y CSS se pueden mover a archivos separados y enlazarlos en el código. Esto es lo que se muestra en la enchufar carpeta en GitHub.