3

Opera 上不显示嵌入的 Youtube 视频。

显然回调是在加载 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 回答