La API del reproductor de video insertado permite controlar este reproductor y observar los eventos que activa. Por ejemplo, puedes escuchar el evento cuando un video se pausa o iniciar la reproducción de un video con un botón personalizado.
Para empezar, sigue estas secciones:
Consulta la documentación del reproductor de video insertado para obtener información sobre cómo configurar el plugin.
Para obtener la instancia de la API del reproductor de video insertado, escucha xfbml.ready
. Si el valor de type
del mensaje es video
, esto indica que el reproductor de video insertado activó el evento ready
.
var my_video_player; FB.Event.subscribe('xfbml.ready', function(msg) { if (msg.type === 'video') { my_video_player = msg.instance; } });
En el ejemplo de código siguiente, se asume que el SDK de Facebook para JavaScript se inicializa con un identificador de la app. Si aún no lo tienes, consulta la documentación sobre cómo crear un identificador de la app.
En el siguiente ejemplo de código, se reemplaza {your-app-id}
con el identificador de la app y data-href
con la URL del video. Asegúrate de comprobar el evento xfbml.ready
tras llamar a la función FB.init()
.
<html> <head> <title>Your Website Title</title> </head> <body> <!-- Load Facebook SDK for JavaScript --> <script> window.fbAsyncInit = function() { FB.init({ appId : '{your-app-id}', xfbml : true, version : 'v3.2' }); // Get Embedded Video Player API Instance var my_video_player; FB.Event.subscribe('xfbml.ready', function(msg) { if (msg.type === 'video') { my_video_player = msg.instance; } }); }; </script> <div id="fb-root"></div> <script async defer src="https://connect.facebook.net/en_US/sdk.js"></script> <!-- Your embedded video player code --> <div class="fb-video" data-href="https://www.facebook.com/facebook/videos/10153231379946729/" data-width="500" data-allowfullscreen="true"></div> </body> </html>
Si usas varios reproductores de video en una página, para identificar a uno de ellos, agrega un atributo id
a la etiqueta correspondiente y comprueba su valor id
en el objeto msg
:
<div id="my-video-player-id" ... /> <script> FB.Event.subscribe('xfbml.ready', function(msg) { if (msg.type === 'video' && msg.id === 'my-video-player-id') { // True for <div id="my-video-player-id" ... my_video_player = msg.instance; } }); </script>
Si lo deseas, puedes llamar a un conjunto de funciones para controlar el reproductor de video u obtener su estado actual (por ejemplo, la posición de reproducción actual).
// Start video playback my_video_player.play(); // Check whether video is muted if (my_video_player.isMuted()) { // Video is muted } // Jump to second 5 of the video my_video_player.seek(5);Referencia sobre los controles del reproductor
La función subscribe()
agrega una función de escucha para un evento especificado (por ejemplo, startedPlaying
).
var myEventHandler = my_video_player.subscribe('startedPlaying', function(e) { // Video started playing ... });
La función subscribe()
devuelve un token con un método release
y, cuando lo llamamos, se elimina la función de escucha del evento.
myEventHandler.release('startedPlaying');Referencia sobre los eventos
Si lo deseas, puedes llamar a un conjunto de funciones para controlar el reproductor de video u obtener su estado actual (por ejemplo, la posición de reproducción actual).
Función | Descripción | Argumentos (tipo) |
---|---|---|
| Reproduce el video. | |
| Pausa el video. | |
| Busca la posición especificada. |
|
| Silencia el video. | |
| Activa el sonido del video. | |
|
| |
| Configura el volumen en el número especificado ( |
|
| Devuelve el volumen actual del video ( | |
| Devuelve la posición de tiempo del video actual en segundos. | |
| Devuelve la duración del video en segundos. | |
| Agrega una función de escucha para el evento especificado. Para obtener más información sobre los eventos, consulta la sección Suscribirse a eventos. Devuelve un token con un método |
|
Evento | Descripción |
---|---|
| Se activa cuando se inicia la reproducción del video. |
| Se activa cuando se pausa el video. |
| Se activa cuando se completa la reproducción del video. |
| Se activa cuando se inicia el almacenamiento en búfer del video. |
| Se activa cuando se recupera el video del almacenamiento en búfer. |
| Se activa cuando se produce un error en el video. |