获取播放器(Youtube API)的当前状态



>是否有任何函数可以获取Youtube API播放器的当前状态?我想编写一个函数来在玩家当前状态为 1(正在播放(时运行命令,但我在参考页面上找不到任何内容。
p/s:我已经知道onStageChange,我需要检查当前状态我的创建播放器代码:

var player;
    window.onYouTubeIframeAPIReady = function () {
        console.log('onYouTubeIframeAPIReady');
        player = new YT.Player('video_player', {
            // playerVars: { 'enablejsapi':1,'autoplay':0,'controls':0,'rel':0,'showinfo':0,'egm':0,'showsearch':0,'modestbranding':1,'iv_load_policy':3,'disablekb':0,'loop':0},
            events: {
                'onReady': onPlayerReady,
                'onStateChange': onPlayerStateChange,
                'onError': onPlayerError
            }
        });
    }

# by onStateChange

API 触发事件以通知应用程序有关内置播放器的更改。对于以下每种类型的状态,API 将传递一个唯一的事件对象:

  • 刘日东。PlayerState.END 0
  • 刘日东。PlayerState.PLAY 1
  • 刘日东。玩家状态.暂停 2
  • 刘日东。PlayerState.BUFFERING 3
  • 刘日东。PlayerState.CUED 5

示例:

   ...
   onPlayerStateChange(event) {
        if (event.data == YT.PlayerState.ENDED) {               
            console.log("Video Ended");
        }
        if (event.data == YT.PlayerState.PLAYING) {             
            console.log("Video Playing");
        }
        if (event.data == YT.PlayerState.PAUSED) {              
            console.log("Video Paused");
        }
        if (event.data == YT.PlayerState.BUFFERING) {               
            console.log("Video Buffering");
        }
        if (event.data == YT.PlayerState.CUED) {                
            console.log("Video Cued");
        }
    },
    ...

# 通过 getPlayerState((

  var player;
  function onYouTubeIframeAPIReady() {
    player = new YT.Player('player', {
      height: '360',
      width: '640',
      videoId: 'M7lc1UVf-VE',
      events: {
        'onReady': onPlayerReady,
        'onStateChange': onPlayerStateChange
      }
    });
  }
  console.log(player.getPlayerState());

getPlayerState()的可能值为:

  • -1 – 未初始化
  • 0 – 已结束
  • 1 – 播放
  • 2 – 已暂停
  • 3 – 缓冲
  • 5 – 提示

最新更新