0

尝试使用 iFrame 和 Firefox 4.0 无法加载视频来解决此问题 这是我目前的代码。我试图查看这个网站 - https://developer.mozilla.org/en/HTML/HTML5/Optimizing_Your_Pages_for_Speculative_Parsing寻求帮助。但这对我来说意义不大。

任何帮助将不胜感激

问候马特

<div id="myVid"></div>

        <script>

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


          var player;
          function onYouTubePlayerAPIReady() {
            player = new YT.Player('myVid', {
              height: '80%',
              width: '100%',
              events: {
                'onReady': onPlayerReady,
                'onStateChange': onPlayerStateChange
              }
            });
          }


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



          function onPlayerStateChange(event) {
            if (event.data == YT.PlayerState.ENDED) {
              getVideo();

            }
          }

        </script><
4

1 回答 1

1

使用 YouTube 嵌入方法需要支持HTML5 postMessage的现代浏览器。

您使用的 Firefox 版本是 4.0 版,但 postMessage 从6 版开始在 Firefox 中可用。

YouTube API 嵌入要求:
https ://developers.google.com/youtube/iframe_api_reference#Requirements

HTML5 postMessage 参考:
https ://developer.mozilla.org/en/DOM/window.postMessage

巧合的是,如果您使用的是 Firefox 版本 6,并且您的嵌入标记已使用视频 ID 完成,那么您将受到最近两天出现的 YouTube 嵌入 API 的灾难性错误... Flash Fallback 已损坏!如果适用于您,请参阅此 SO 解决方法:
https ://stackoverflow.com/a/10560802/1195891

于 2012-05-12T03:37:35.737 回答