5

我试图弄清楚当播放器不再缓冲时是否有回调。

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

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

有谁知道这是否可能?

另外,我正在使用 Nirvana Tikku 的 jquery-youtube 插件,回调列表在这里这里......这些都不起作用吗?

谢谢!!

4

2 回答 2

0

我会设置一个函数来定期检查缓冲是否继续:

// set interval to something reasonable, 5 seconds?
var buffercheck = setInterval(bufferstatus, 5000);
function bufferstatus() {
  onPlayerBuffering: function(){ /* your code for a callback here */ },
}
于 2012-05-15T20:58:15.147 回答
0

查看 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');
  }
}
于 2012-05-21T05:51:12.880 回答