Этот API позволяет управлять встраиваемым видеоплеером, а также следить за событиями, которые он запускает. Например, вы можете отслеживать события, когда видео приостановлено, или запускать воспроизведение нажатием специальной кнопки.
Чтобы начать работу, ознакомьтесь со следующими разделами.
Инструкции по настройке плагина см. в документации для встраиваемого видеоплеера.
Чтобы получить экземпляр API встраиваемого видеоплеера, дождитесь события xfbml.ready
. Если сообщение имеет тип (type
) video
, то событие ready
запущено встраиваемым видеоплеером.
var my_video_player; FB.Event.subscribe('xfbml.ready', function(msg) { if (msg.type === 'video') { my_video_player = msg.instance; } });
В примере ниже предполагается, что при инициализации Facebook SDK для JavaScript используется ID приложения. Если у вас нет ID приложения, узнайте, как его создать.
В приведенном ниже коде подставьте вместо {your-app-id}
ID приложения, а вместо data-href
— URL видео. Обязательно проверьте событие xfbml.ready
после вызова функции 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>
Предположим, вы используете несколько плееров на одной странице. В этом случае, чтобы идентифицировать видеоплеер, нужно добавить в тег плеера атрибут id
и проверить id
в объекте 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>
Пользователю доступен набор функций, позволяющих управлять видеоплеером или просматривать его текущий статус, например положение воспроизведения.
// 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);Справка по управлению плеером
Функция subscribe()
добавляет функцию ожидания определенного события, например startedPlaying
.
var myEventHandler = my_video_player.subscribe('startedPlaying', function(e) { // Video started playing ... });
Функция subscribe()
возвращает маркер с методом release
. При вызове этот метод удаляет функцию ожидания из события.
myEventHandler.release('startedPlaying');Справка по событиям
Пользователю доступен набор функций, позволяющих управлять видеоплеером или просматривать его текущий статус, например положение воспроизведения.
Функция | Описание | Аргументы (тип) |
---|---|---|
| Воспроизведение видео. | |
| Приостановка видео. | |
| Поиск указанной позиции. |
|
| Выключение звука. | |
| Включение звука. | |
|
| |
| Установка определенного значения громкости ( |
|
| Получение текущего значения громкости видео ( | |
| Получение текущей позиции в видео (в секундах). | |
| Получение продолжительности видео (в секундах). | |
| Добавление функции ожидания указанного события. Подробнее о событиях см. в разделе Подписка на события. Получение маркера с методом |
|
Событие | Описание |
---|---|
| Начало воспроизведения видео. |
| Приостановка воспроизведения. |
| Завершение воспроизведения. |
| Начало буферизации видео. |
| Извлечение видео из буфера. |
| Ошибка в видео. |