【问题标题】:Youtube JS API Causes Error in Internet ExplorerYoutube JS API 在 Internet Explorer 中导致错误
【发布时间】:2013-06-28 02:45:10
【问题描述】:

我正在尝试在网页中嵌入 Youtube 视频。我正在使用 Youtube Javascript API 来嵌入/加载视频。

我的问题:视频嵌入到 Internet Explorer 中,但是当我检查控制台时出现许多 javascript 错误。这些错误意味着我无法重播视频、使视频增长或真正做任何事情。这些 javascript 错误不会发生在 Firefox 或 Chrome 中,而只是 IE。

控制台错误:

SCRIPT87:参数无效。 www-embed-player-vf1m....js 行 211 字符 405

这是我的JSFiddle,它证明了这个问题。记得在 IE 中 RUN 看看问题。

我的代码:

<html>
<head>
<script src="https://www.youtube.com/player_api" type="text/javascript"></script>
<script type="text/javascript">
  function loadYouTubeVideo(uid) {
        setTimeout( function() {
                    var id         = uid;
                    var instPlayer = new YT.Player(id, {
                        height: '240',
                        width: '426',
                        enablejsapi: 1,
                        suggestedQuality: 'highres',
                        videoId: uid});
            }, 500);
  }
</script>
</head>
<body>

<p>Run in IE and look at console</p>

<div id="Go3u2zw6fbE"></div><script> loadYouTubeVideo("Go3u2zw6fbE"); </script>

</body>
<html>

【问题讨论】:

  • 你的小提琴是空的 ;) ... 除非是 jsfiddle.net/89gxN/1
  • 在你的 jsfiddle 中,使用 no wrap - in &lt;head&gt; 模式,并创建缺少的函数 onPlayerReadyonPlayerStateChange 然后 IE 不应该抛出任何错误......你的分叉 jsfiddle jsfiddle.net/2Y6mk
  • @JFK 哎呀。我现在已经修好了。
  • @JFK 知道为什么会出现 IE 错误或如何解决?

标签: javascript html youtube-api


【解决方案1】:

问题是我是从本地 HTML 文件而不是从 Internet 上的 HTML 文件运行 Javascript 代码。

我猜当您在本地 HTML 文件(仅限 Internet Explorer 内)中运行 Youtube Javascript API 时,youtube 视频将无法播放。即使我单击“允许 Javascript”,它仍然无法播放。

【讨论】:

  • 不是一个完美的答案,因为它“应该”在本地工作,就像 Firefox 一样(我指的是我自己的代码,有同样的错误。)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-11-24
  • 1970-01-01
  • 2013-04-08
  • 2011-09-11
  • 1970-01-01
  • 2012-12-18
  • 1970-01-01
相关资源
最近更新 更多