youtube iframe 事件

新手上路,请多包涵

我尝试捕捉 youtube iframe 的事件:http: //lab.joergpfeiffer.de/videofull/youtube.php

所以我先调用 api

 <script type='text/javascript' src='http://www.youtube.com/player_api'></script>

我设置了iframe

 <iframe id="ytfullplayer" type="text/html" width="640" height="390" src="http://www.youtube.com/p/B93C3D017CB2D65A?enablejsapi=1&origin=lab.domain.de" frameborder="0" ></iframe>

并尝试稍后设置事件

var ytfullplayer;
    function onYouTubePlayerAPIReady() {
        console.log('onYouTubePlayerAPIReady');
        ytfullplayer = new YT.Player('ytfullplayer', {
            events: {
              'onReady': testfunc,
              'onPlaybackQualityChange': testfunc,
              'onStateChange': testfunc,
              'onError': testfunc
            }
        });

    }
    function testfunc(){ alert('hello'); }

无论我做什么,都不会触发任何事件。我阅读了 iframe api 10 次。它应该实际工作。

任何想法?

原文由 joerg P 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 224
1 个回答

在 onYouTubePlayerAPIReady() 之前执行这些例程

// This code loads the IFrame Player API code asynchronously.
var tag = document.createElement('script');
tag.src = "http://www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

如果仍然感到困惑,请访问 http://code.google.com/apis/youtube/iframe_api_reference.html

原文由 Adeel 发布,翻译遵循 CC BY-SA 3.0 许可协议

推荐问题