2016-05-16 4 views
0

Ich benutze unten Skript, um YouTube-Video als Bootstrap Modal zu spielen, es Video auf Desktop-Version spielen, aber das gleiche nicht auf mobilen Geräten wie iPhone und iPad spielen.YouTube als Popup spielen auf der Desktop-Version, aber nicht auf mobilen Geräten

YouTubeLoader.js

// Load & insert into DOM Youtube iframe_api 
var tag = document.createElement('script'); 

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

/* Create Player */ 
var player; 

function onYouTubeIframeAPIReady() { 

    console.log('Api Loaded'); 

} 

    $(".youtubeVideoLoader").each(function() { 
    // Set the BG image from the youtube ID 
    $(this).css('background-image', 'url(//i.ytimg.com/vi/' + this.id + '/hqdefault.jpg)'); 

     // Click the video div 
     $(document).delegate('#' + this.id, 'click', function() { 
     // Vemos le id del video 
     console.log(this.id); 

     // Create new instance of player 
     player = new YT.Player('videoModalContainer', { 
      videoId: this.id, 
      events: { 
      'onReady': OpenModal, 
      'onStateChange': console.log('Changed') 
      } 
     }); 

     // Show Modal 
     function OpenModal() { 
      $("#youtubeModal").modal({backdrop: "static"}); 
      // Set Highres 
      player.setPlaybackQuality('highres'); 
      // Play Video 
      player.playVideo(); 
     }; 
     });// /click 

    }); // /each video 

    // Add a Lisener to Modal CLose Button 
    $('#CloseModalButton').click(function(){ 
     console.log('Stop Preset'); 
     player.destroy(); 
     }); 

HTML

<div id="3WCMCeS7Na4" class="youtubeVideoLoader"> 
</div> 
    <!-- Modal Template --> 
    <div class="modal fade" id="youtubeModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> 
     <div class="modal-dialog" role="document"> 
     <div class="modal-footer"> 
      <button id="CloseModalButton" type="button" class="btn btn-default" data-dismiss="modal">X</button> 
      </div> 
     <div class="modal-content"> 

      <div class="modal-body"> 
      <div id="videoModalContainer"> 

      </div> 
      </div> 

Ich habe es mit anderen Video versucht, und ich vor dem gleichen Problem, wie ich es ursprünglich gedacht könnte ein Video sein, die nicht auf Privilegien spielt

Antwort

0

Das Problem wurde behoben, indem die folgenden zwei Codezeilen entfernt wurden.

Es wurde nicht auf mobilen Geräten abgespielt, da Youtube die AutoPlay-Funktion von Video beendet hat. Nicht sicher, warum es auf der Desktop-Version funktioniert ...

Verwandte Themen