Facebook Video Embed Controll с Javascript (воспроизведение / пауза) - PullRequest
1 голос
/ 09 мая 2020

Пожалуйста, помогите мне, как я могу правильно использовать этот api с кодом, который они дают в URL-адресе ниже

https://developers.facebook.com/docs/plugins/embedded-video-player/api/#control-reference

enter image description here

window.fbAsyncInit = function() {
                        FB.init({
                          appId      : '17xxxxxxxxxx',
                          xfbml      : true,
                          version    : 'v3.5'
                        });

                    var ssp_video_player;
                    var time = jQuery(this).attr("time");


                    FB.Event.subscribe('xfbml.ready', function(msg) {
                      if (msg.type === 'video') {
                        ssp_video_player = msg.instance;
                      }
                      ssp_video_player.seek(600);

                    });

                };

Когда Я загружаю страницу с пропуском / поиском видео, но после завершения загрузки я не смог управлять плеером с помощью этой переменной, например

ssp_video_player.play(); or 
ssp_video_player.pause(); etc.

Или любым другим способом, чтобы я мог управлять видеоплеером facebook ...

1 Ответ

1 голос
/ 19 мая 2020

Причина, по которой вы не можете управлять через ssp_video_player вне функции, заключается в том, что переменная определена локально. Вы должны определить ssp_video_player вне функции. Кроме того, убедитесь, что вы не получаете доступ к воспроизведению / паузе до того, как будет выполнена асинхронная функция и будет установлено значение ssp_video_player.

var ssp_video_player;
window.fbAsyncInit = function() {
    FB.init({
       appId      : '17xxxxxxxxxx',
       xfbml      : true,
       version    : 'v3.5'
    });

    var time = jQuery(this).attr("time");


    FB.Event.subscribe('xfbml.ready', function(msg) {
        if (msg.type === 'video') {
            ssp_video_player = msg.instance;
        }
        ssp_video_player.seek(600);

     });
};
...