0

ビデオが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);

    }
}
4

1 に答える 1

0

ハンドラーは、onStateChange「再生」イベントだけでなく、あらゆる種類のプレーヤー状態の変化に対してトリガーされます: https://developers.google.com/youtube/js_api_reference#onStateChange

onytplayerStateChange()「一時停止」/「バッファリング」イベントをリッスンし、それらが発生したときにカウントダウンを一時停止し、次の「再生中」イベントが発生したときにのみ再開するように関数を変更する必要があります。

于 2012-12-28T16:29:23.460 に答える