2017-02-18 3 views
2

Как добавить автовоспроизведение в код ниже?Добавить автовоспроизведение в ytplayer

В приведенном ниже коде HTML и JavaScript показан простой пример, который вставляет игрока YouTube в элемент страницы с идентификационным значением ytplayer. Указанная здесь функция onYouTubePlayerAPIReady() вызывается автоматически при загрузке кода API IFrame Player. Этот код не определяет параметры игрока, а также не определяет другие обработчики событий.

<div id="ytplayer"></div> 

<script> 
// Load the IFrame Player API code asynchronously. 
var tag = document.createElement('script'); 
.src = "https://www.youtube.com/player_api"; 
var firstScriptTag = document.getElementsByTagName('script')[0]; 
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); 

// Replace the 'ytplayer' element with an <iframe> and 
// YouTube player after the API code downloads. 
var player; 
function onYouTubePlayerAPIReady() { 
player = new YT.Player('ytplayer', { 
    height: '360', 
    width: '640', 
    videoId: 'M7lc1UVf-VE' 
}); 
} 
</script> 

ответ

0

Вы должны будете звонить playVideo() на onPlayerReady события.

function onPlayerReady(event) { 
    event.target.playVideo(); 
} 

Полный код выглядит следующим образом:

<!DOCTYPE html> 
<html> 
    <body> 
     <!-- 1. The <iframe> (and video player) will replace this <div> tag. --> 
     <div id="player"></div> 

     <script> 
     // 2. This code loads the IFrame Player API code asynchronously. 
     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() { 
      player = new YT.Player('player', { 
       height: '390', 
       width: '640', 
       videoId: 'M7lc1UVf-VE', 
       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. 
     var done = false; 
     function onPlayerStateChange(event) { 
      if (event.data == YT.PlayerState.PLAYING && !done) { 
       setTimeout(stopVideo, 6000); 
       done = true; 
      } 
     } 
     function stopVideo() { 
      player.stopVideo(); 
     } 
     </script> 
    </body> 
</html> 
0

Я уже делал это раньше в моем проекте так, чтобы это сделать, пожалуйста, следуйте инструкциям

шаг-1

Добавить iframe, в котором загружаются наши видеоролики YouTube. Подобно этому

<iframe width="100%" height="378" id="youtube_url" allowfullscreen="1" class="vjs-default-skin" src="https://www.youtube.com/embed/Rk6_hdRtJOE?wmode=opaque&enablejsapi=1&version=3&autoplay=0&controls=0&playerapiid=youtube_player&rel=0&showinfo=0" frameborder="0"> 
     </iframe> 

Step2

А затем добавить IFrame API YouTube

<script src="https://www.youtube.com/iframe_api"></script> 

Шаг 3

Затем используйте этот код, чтобы создать объект API YouTube и использовать его для cotroller видео, как автоматическое воспроизведение и т. д.

var player = new YT.Player('youtube_videos_url', { 
      events: { 
       'onReady': onPlayerReady, 
       'onStateChange': onPlayerStateChange 
      } 

     }); 
function onPlayerReady(event) { 
player.playVideo(); 
} 

Этот код будет запускаться при загрузке нашего видео, затем player.playVideo(); автоматически воспроизвести видео.

Я знаю, что это вам поможет.

Смежные вопросы