如何监听YouTube视频从未启动到播放5秒钟的时间?

时间:2012-12-21 08:50:26

标签: javascript youtube youtube-api

我有下面的代码,当视频播放5秒钟时,它会打印到控制台。但是,如果用户暂停视频然后再次按下播放,则会将其打印到控制台。

当状态从未启动到播放5秒钟时,如何仅打印到控制台?

function onYouTubePlayerReady(playerId) {
     ytplayer = document.getElementById("myytplayer");
    ytplayer.addEventListener("onStateChange", "onytplayerStateChange");
}

function onytplayerStateChange(newState) {
    if (newState == 1) {
        setTimeout(function(){
            current = ytplayer.getCurrentTime();
            console.log(current);
        }, 5000);

    }
}

1 个答案:

答案 0 :(得分:0)

onStateChange处理程序会因各种播放器状态更改而被触发,而不只是“播放”事件:https://developers.google.com/youtube/js_api_reference#onStateChange

你需要修改你的onytplayerStateChange()函数来监听“暂停”/“缓冲”事件,并在触发这些事件时暂停你的倒计时,并且只有在下一个“播放”事件被触发时才重启它。 / p>