Очередь нескольких Youtube видео с использованием YouTube API - PullRequest
0 голосов
/ 30 апреля 2019

Я пытаюсь создать страницу запроса песни с помощью YouTube API. Я могу поставить плейлист в очередь и заставить его воспроизводить, но проблема в том, что он продолжает воспроизводить первое видео плейлиста. Не могли бы вы дать мне совет?

вот мой код:

var listID = ['dX0WrH0HFgI','iE52-XXnQqs'];
            var tag = document.createElement('script');

              tag.src = "https://www.youtube.com/iframe_api";
              var firstScriptTag = document.getElementsByTagName('script')[0];
              firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

              // 3. This function creates an <iframe> (and YouTube player)
              //    after the API code downloads.
              // var player;
              // function onYouTubeIframeAPIReady(){

              // }
              window.onYouTubeIframeAPIReady= function() {
                player = new YT.Player('player', {
                  height: '390',
                  width: '640',
                  videoId: 'fRKq7GOD4hI',
                  events: {
                    'onReady': onPlayerReady,
                    'onStateChange': onPlayerStateChange
                  }
                });

              }

              // 4. The API will call this function when the video player is ready.
            function onPlayerReady(event) {
            event.target.playVideo();
            }

            // 5. The API calls this function when the player's state changes.
            //    The function indicates that when playing a video (state=1),
            //    the player should play for six seconds and then stop.

При изменении состояния: когда заканчивается первое видео, оно ставит в очередь список воспроизведения, но не начинает воспроизведение, поэтому я добавляю состояние (event.data == -1) для воспроизведения списка.
Повторит первое видео из списка

            function onPlayerStateChange(event) {

            //when a video ends, queue this playlist
                if(event.data == 0){
                    player.cuePlaylist({
                        playlist:[listID]
                    });

                }
                //when playlist unstarted play the video in playlist
                if(event.data == -1){
                    player.playVideo();
                }
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...