Youtube API:查看当前正在播放的视频ID

Mar*_*ter 3 javascript jquery youtube-api

有没有办法显示/查看/返回当前播放的视频(因此,哪个videoID)?

这是Iframe API的基本代码:

var player;
  function onYouTubeIframeAPIReady() {
    player = new YT.Player('player', {
      height: '390',
      width: '640',
      videoId: 'pJ18QeQy0e8',
      events: {
        'onReady': onPlayerReady,
        'onStateChange': onPlayerStateChange,
        'onError': onError,
      },
        playerVars: {

                    'controls': 0,
                    'showinfo': 0,
                    'iv_load_policy': 3,
                    'wmode': "opaque",
                },
    });
  }
Run Code Online (Sandbox Code Playgroud)

第一个视频完成后.此事件将被调用:

  function onPlayerStateChange(event) {
if(event.data === 0) {    
        player.stopVideo();
player.loadVideoById(getId());          

        }
  }
Run Code Online (Sandbox Code Playgroud)

getId()函数将获得另一个videoId来播放..

我想在DIV中显示,videoId当前正在播放

小智 15

player.getVideoData()['video_id']
Run Code Online (Sandbox Code Playgroud)

要么

var video_data = player.getVideoData()
video_data['video_id']
Run Code Online (Sandbox Code Playgroud)

解:

function onPlayerStateChange(event) {
    if(event.data === 0) {    
        player.stopVideo();
        player.loadVideoById(player.getVideoData()['video_id']);
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 这不再起作用,尝试访问此函数返回`e.player.getVideoData不是函数` (2认同)