4

我想知道,通过 iframe 嵌入 youtube 视频是否会暴露某些事件,例如 onStart 或 onStop,您可以在其中指定一些回调?

4

2 回答 2

9

这是处理启动和停止事件的示例:

HTML 文件 (index.html):

<!DOCTYPE html>
<html>
    <head>
        <title>Stackoverflow</title>
        <script type="text/javascript" src="http://www.youtube.com/player_api"> </script>
        <script type="text/javascript" src="sof.js"> </script>
    </head>
    <body>
        <div id="player"></div>
    </body>
</html>

和 JavaScript (sof.js):

var player;
// This function creates an <iframe> (and YouTube player)
// after the API code downloads.
function onYouTubePlayerAPIReady() {
    player = new YT.Player('player', {
        height: '390',
        width: '640',
        videoId: 'u1zgFlCw8Aw',
        events: {
            'onStateChange': function (event) {
                switch (event.data) {
                    case -1:
                        console.log ('unstarted');
                        break;
                    case 0:
                        console.log ('ended');
                        break;
                    case 1:
                        console.log ('playing');
                        break;
                    case 2:
                        console.log ('paused');
                        break;
                    case 3:
                        console.log ('buffering');
                        break;
                    case 5:
                        console.log ('video cued');
                        break;
                }
            }
        }
    });
}

对于每种情况,您都可以设置一个处理程序。

欲了解更多信息:

  1. YT 播放器入门
  2. YT Javascript API 事件
于 2012-05-14T09:29:00.597 回答
1

唯一使用的事件是:

1 - onStateChange 
2 - onPlaybackQualityChange 
3 - onError 
4 - onApiChange

-事件处理程序:

1- onYouTubePlayerReady(playerid)

于 2012-05-14T09:29:20.133 回答