2012-08-10 3 views
5

Hier bin ich mit einer anderen Frage, diesmal über die Youtube-API. Ich verwende diesen Code einen YouTube-Player zu bekommen:Youtube Unsafe JavaScript versuchen, auf Frame mit URL zuzugreifen

<div id=\"youtubeVideoContainer\"></div><script type=\"text/javascript\"> 
         //Load player api asynchronously. 
         var tag = document.createElement('script'); 
         tag.src = \"//www.youtube.com/player_api\"; 
         var firstScriptTag = document.getElementsByTagName('script')[0]; 
         firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); 

         var player; 
         function onYouTubePlayerAPIReady() { 
          player = new YT.Player('youtubeVideoContainer', { 
           height  : \"".$height."\", 
           width   : \"".$width."\", 
           videoId  : \"".$id."\", 
           playerVars : ".json_encode($this->playerParams)." 
          }); 
         } 
        </script> 

Bitte die \ nichts dagegen“, es in PHP gemacht wird, so dass es nur zu entkommen, auch wird das Video abgespielt wird, so dass keine große Fehler :)

Was mich ärgert, ist jedes Mal beantrage ich ein Video, sehe ich diese Nachricht in meiner Konsole: Unsafe JavaScript Versuch zuzugreifen Rahmen mit URL

https://www.socialthisday.com/playwin/admin/content/edit/project_1/home.html von Rahmen mit URL https://www.youtube.com/embed/2UJH9dCtp7w?autohide=1&autoplay=1&controls=0&border&cc_load_policy=0&color&color1&color2&disablekb&enablejsapi=1&egm&fs&hd&iv_load_policy&loop&modestbranding=1&origin=https%3A%2F%2Fwww.socialthisday.com&playerapiid&playlist&rel=0&showinfo=0&showsearch&start&theme&version=3. Domains, Protokolle und Ports müssen übereinstimmen.

Ich möchte das beheben, damit ich diese Nachricht nicht sehe. Ich weiß, dass es nicht wirklich wichtig ist, aber ich mag es jetzt, wie ich einen Youtube-Player auf meiner Seite bekomme, ohne die obige Warnung zu sehen.

Hoffentlich können Sie mir helfen!

EDIT: Dies ist die Ausgabe:

<div id="YTcontainer_502513c7ebc1b">&nbsp;</div> 
         <script type="text/javascript"> 
          //Load player api asynchronously. 
          var tag = document.createElement('script'); 
          tag.src = "//www.youtube.com/iframe_api"; 
          var firstScriptTag = document.getElementsByTagName('script')[0]; 
          firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); 

          var YTplayer_502513c7eb834;               
          window.onYouTubeIframeAPIReady = function() { 
           YTplayer_502513c7eb834 = new YT.Player("YTcontainer_502513c7ebc1b", { 
            height  : "200", 
            width   : "200", 
            videoId  : "2UJH9dCtp7w", 
            playerVars : {"autohide":1,"autoplay":1,"controls":0,"border":"","cc_load_policy":0,"color":"","color1":"","color2":"","disablekb":"","enablejsapi":"","egm":"","fs":"","hd":"","iv_load_policy":"","loop":"","modestbranding":1,"origin":"","playerapiid":"","playlist":"","rel":0,"showinfo":0,"showsearch":"","start":"","theme":"","version":3,"wmode":"opaque"} 
           }); 
          } 

          if(window.YT){ 
           onYouTubeIframeAPIReady(); 
          } 
         </script> 
+0

* Bitte nicht beachten Sie die \“einzubetten, ist es in PHP gemacht wird, so dass es zu entkommen nur ist * - Zeige uns die ** Ausgabe ** von PHP – Quentin

+0

Ja, es ist nervig Ich habe keine andere Erklärung dafür, aber Youtube versucht Cross-Origin-Fensterzugriffs-Exploits, falls man einen Browser benutzt, der es ihnen erlaubt auf jeder Seite mit youtube eingebetteten Videos ... – Esailija

+0

Quentin, ich habe die Ausgabe für Sie hinzugefügt – SheperdOfFire

Antwort

5

Das zugrunde liegende Problem ist http://code.google.com/p/chromium/issues/detail?id=17325

Sobald das geklärt ist, sollten die Warnungen in der JavaScript-Konsole auf den Seiten, die die YouTube iframe einbetten verwenden gehen Auswärts- sicherlich für Chrome, und ich glaube auch für Safari.

+5

Der Bug Detail, den Sie verlinken, ist seit 2009 aktiv. Sieht nicht wie Google Chromeboys aus es irgendwo in der Nähe einer Prioritätenliste. – charliemagee

0

Kontrolle der „Alten Einbettungscode verwenden“

es <object> Tag verwenden, wird das Video

Verwandte Themen