Skip to main content
 首页 » 编程设计

jquery之当youtube播放器在暂停缓冲后再次开始时,是否有js回调

2026年10月29日3artech

我试图弄清楚当玩家不再缓冲时是否有回调。

我现在正在使用 onPlayerBuffering: function(){}; 当播放器开始缓冲时,但我似乎找不到任何相反的功能。

一旦播放器缓冲,onPlayerPlaying: function(){}; 似乎就不起作用了。

有人知道这是否可行吗?

此外,我正在使用 Nirvana Tikku 's jquery-youtube pluggin ,回调列表 are here和 here ...这些都不起作用吗?

谢谢!!

请您参考如下方法:

查看 YouTube 播放器 API https://developers.google.com/youtube/js_api_reference#Events

您只需监听 onStateChange 事件即可:

这是一个工作演示:http://jsbin.com/izolo/edit

示例代码:

function handlePlayerStateChange (state) { 
  switch (state) { 
    case 1: 
    case 3: 
      // Video has begun playing/buffering 
      videoContainer.cycle('pause'); 
      break; 
    case 2: 
    case 0: 
      // Video has been paused/ended 
      videoContainer.cycle('resume'); 
      break; 
  } 
} 
 
function onYouTubePlayerReady(id){ 
  var player = $('#' + id)[0]; 
  if (player.addEventListener) { 
    player.addEventListener('onStateChange', 'handlePlayerStateChange'); 
  } 
  else { 
    player.attachEvent('onStateChange', 'handlePlayerStateChange'); 
  } 
}