获取当前持续时间facebook视频api

get current duration facebook video api

本文关键字:视频 api facebook 持续时间 获取      更新时间:2023-09-26

我有一些问题,获得当前持续时间,它调用函数只有一次,而不是每10秒调用一次

$.get('/playlistVideos', function(data){
    var i = 0;
    var maxDuration = 100;
    var id_video;
    video = JSON.parse(data);
    nb_video = video.length;
    $('.fb-video').attr('data-href', video[i].link);
    window.fbAsyncInit = function() {   
        FB.init({
            appId      : 'XXXXXX',
            xfbml      : true,
            version    : 'v2.5'
        });

        // Get Embedded Video Player API Instance
        FB.Event.subscribe('xfbml.ready', function(msg) {
            var my_video_player = msg.instance;
            my_video_player.play();
            var test = my_video_player.subscribe('startedPlaying', function(e) {
                window.setTimeout( function () {
                        console.log('duration >> '+my_video_player.getCurrentPosition());
                    }, 
                    10000 //check every 30 seconds
                )
            });
        });
    };
    (function(d, s, id){
       var js, fjs = d.getElementsByTagName(s)[0];
       if (d.getElementById(id)) {return;}
       js = d.createElement(s); js.id = id;
       js.src = "//connect.facebook.net/en_US/sdk.js";
       fjs.parentNode.insertBefore(js, fjs);
     }(document, 'script', 'facebook-jssdk'));
});

我的函数setTimeout似乎是正确的,我不知道如何解决我的问题

不使用setTimeout(),而必须使用setInterval()来重复调用函数或执行代码片段,每次调用之间有固定的时间延迟:

setInterval(fn, miliseconds);