3

埋め込まれた Youtube ビデオが Opera に表示されません。

YT api ライブラリが読み込まれるより後にコールバックが定義されているようですが、回避策が見つかりませんでした。

現在、ページは /player_api js インクルージョンを介して YT API をロードしており、これは Firefox でのみ機能します。

経由で YT API を読み込もうとしました

<script type="text/javascript">
var tag = document.createElement('script');
tag.src = "//www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
<script>

ただし、その場合、ページは Opera でも Firefox でも機能しません。

問題のあるページ: http://www.ionpoverty.tv/blog/featured/having-it-all-low-income-women-and-work-inequality/

4

1 に答える 1

2

js を含める方法が、その下のスクリプトの実行をブロックしているようです。ブラウザごとにブロッキング スクリプトの処理方法が若干異なります。ロードするスクリプトを、www.youtube.com/iframe_api定義した場所の後に移動しますonYouTubePlayerAPIReady。に変更することもお勧めしますonYouTubeIframeAPIReadyが、どちらでも機能するはずです。

他にできることはwww.youtube.com/iframe_api、同じスクリプト タグで「onYouTubeIframeAPIReady」を読み込んで定義することです。これはシングル スレッド環境であるため、他のスクリプトが含まれる前に onYouTubeIframeAPIReady が定義されていることを確認する必要があります。

于 2012-10-12T03:41:24.830 に答える