2012-04-15 15 views
2

Ich habe eine Seite, auf der Benutzer Youtube Videos in ein Forum veröffentlichen können.Zugriff verweigert Fehler beim Einbetten von Youtube in Modal

Nach Benutzer Beiträge einen Link zu einem Video den Link zu so etwas wie dies umgesetzt wird:

<a href='javascript:void(0)' class='video_player' data-videoid='http://www.youtube.com/embed/$vidID'>$video_title</a> 

Die $ vidID ist nur der Youtube Video-ID, die Sie in der URL jedes YouTube-Video zu sehen. Wenn der Benutzer auf den Link klickt, um das Video abzuspielen, wird ein Modal mit dem darin eingebetteten Video geöffnet. Hier ist die JS für den Modal:

$('.video_player').live('mouseover', function(event) {//VIDEO PLAYER MODAL 
    var videoid = $(this).attr("data-videoid"); 
    var sourcepage = $(this).attr("data-sourcepage"); 
    $(this).qtip({ 
    id: 'videomodal', 
    content: { 
      text: '<img src="images/loading.gif" alt="Loading..." /> Loading..please wait.', 
      ajax: {url: 'modals/video_player.php',type: 'GET',data: { videoid: videoid, sourcepage: sourcepage}}, 
      title: { text: 'Video Player', button: true } 
    }, 
    position: { my: 'center', at: 'center', target: $(window) }, 
    show: { event: 'click', solo: true, modal: true }, 
    hide: false, 
    style: 'ui-tooltip-tipsy ui-tooltip-rounded higher-zindex', 
    events: { 
     hide: function(event, api){ 
     auto_refresh = setInterval(function(){$('#bottom_middle').load(thisurl + '&timer=' + new Date().getTime() + ' #bottom_middle');}, 5000);    
     $(this).qtip("destroy"); 
     } 
    }, 
    }); 
return false; 
}); 

Hier ist mein Code für video_Player.php: (Sehr einfach, die modalen lädt diese Seite und bettet die benötigte iframe um das Video abzuspielen)

<?PHP 
$videoid = $_GET['videoid']; 
$sourcepage = $_GET['sourcepage']; 

echo "<iframe title='YouTube video player' width='480' height='390' src='$videoid' frameborder='0' allowfullscreen></iframe>"; 
?> 

In Chrome Ich bekomme den "Unsicheren JavaScript-Versuch, auf Frame mit URL blah blah" -Fehler zuzugreifen, aber das Video spielt und alles scheint richtig zu funktionieren, aber im IE bekomme ich SCRIPT5: Zugriff verweigert. Ich habe das Web und diese Seite nach einer Lösung gesucht, aber ich hatte Glück. Wer weiß von einer Arbeit für diese oder eine bessere Methode? Ich benutze das Modal (qtip2), das ist die einzige Voraussetzung. Alle meine jquery-Bibliotheken sind auch auf dem neuesten Stand.

Antwort

0

Versuchen, diese zu Ihrem Code:

$('iframe').each(function(){ 
    var url = $(this).attr("src"); 
    $(this).attr("src",url+"?wmode=transparent"); 
}); 
Verwandte Themen