Методы JavaScript для определения окончания видео на YouTube

Чтобы определить, когда видео YouTube заканчивается, с помощью JavaScript, вы можете использовать API JavaScript YouTube. Вот несколько методов, которые вы можете использовать:

  1. Событие onStateChange: вы можете прослушивать событие onStateChangeи проверять, изменится ли состояние на 0, что указывает на конец видео.
  2. >

function onYouTubePlayerAPIReady() {
  var player = new YT.Player('player', {
    events: {
      'onStateChange': onPlayerStateChange
    }
  });
}
function onPlayerStateChange(event) {
  if (event.data === 0) {
    // Video has ended, perform your actions here
  }
}
  1. Событие onEnded: вы также можете использовать событие onEnded, которое срабатывает, когда воспроизведение видео заканчивается.
var player = new YT.Player('player', {
  events: {
    'onEnded': onPlayerEnded
  }
});
function onPlayerEnded(event) {
  // Video has ended, perform your actions here
}
  1. Метод getCurrentTime: вы можете периодически проверять текущее время видео с помощью метода getCurrentTime()и сравнивать его с продолжительностью видео, чтобы определить, закончилось ли видео.
var player = new YT.Player('player', {
  events: {
    'onReady': onPlayerReady
  }
});
function onPlayerReady(event) {
  setInterval(function() {
    if (player.getPlayerState() === YT.PlayerState.PLAYING) {
      var currentTime = player.getCurrentTime();
      var duration = player.getDuration();
      if (currentTime >= duration) {
        // Video has ended, perform your actions here
      }
    }
  }, 1000);
}

Эти методы позволяют по-разному определить, когда видео YouTube заканчивается. Выберите тот, который лучше всего соответствует вашим требованиям.