api - Youtube iFrame javascript API onYouTubeIframeAPIReady not firing

标签 api iframe youtube

这是来自 Youtube API 文档:

“如入门部分所述,您可以自己创建标签,而不是在您的页面上编写一个空元素,然后播放器 API 的 JavaScript 代码将用一个元素替换该元素。”

但是我无法获取 API 来回调我的 javascript。任何帮助都会很棒。

这是我的 HTML 代码:

 <iframe id="player" type="text/html" width="640" height="360"src="http://www.youtube.com/embed/1_QO8LoGNpc?enablejsapi=1" frameborder="0"></iframe>

JavaScript:

<script>
    function onYouTubeIframeAPIReady() {
        alert("hey");
        player = new YT.Player('player', {
         // height: '720',
         // width: '1280',
         // videoId: '1_QO8LoGNpc',
          events: {
            'onReady': onPlayerReady,
            'onStateChange': onPlayerStateChange
          }
        });
    }
</script>

我可以使用 javascript 创建 iframe 但不在页面上设置 iframe 来让它工作。帮助!

最佳答案

函数 onYouTubeIframeAPIReady() 应该在加载之前定义 https://www.youtube.com/iframe_api .

思路是这样的:

<iframe id="player" type="text/html" width="640" height="360"src="http://www.youtube.com/embed/1_QO8LoGNpc?enablejsapi=1" frameborder="0"></iframe> 

    <script>
            function onYouTubeIframeAPIReady() {
            alert("hey");
            player = new YT.Player('player', {
             // height: '720',
             // width: '1280',
             // videoId: '1_QO8LoGNpc',
              events: {
                'onReady': onPlayerReady,
                'onStateChange': onPlayerStateChange
              }
            });
        }
    </script>

    <script src="https://www.youtube.com/iframe_api"></script>

为什么?因为iframe_api加载后会调用这个函数。在您的情况下,iframe_api 之前已加载。

最好的问候。

关于api - Youtube iFrame javascript API onYouTubeIframeAPIReady not firing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13637205/

相关文章:

jquery - 嵌入YouTube iframe-仅在缓冲完成后播放视频

youtube - 我们可以通过YouTube API获得用户的YouTube数据(历史记录,推荐视频等)吗?

java - 当前使用 WSO2 Identity Server API 的示例

javascript - Chrome PrintFrienfly PDF 扩展会弹出一个 Iframe。我可以修改 CSS 并处理文本吗?

api - 自动翻译 .po 文件?

java - 通过Servlet显示Pdf文档

javascript - Accordion :隐藏/显示 iframe onclick

ruby-on-rails - youtube_it 在更新到 Ruby 2 后抛出 ArgumentError - 如何修复?

php - 改变使用 PHP/MySQL 生成的图形

javascript - 在 JSON API 中指定排序顺序