2

API 文档不包含在 YouTube 视频达到特定时间戳时触发 javascript 事件的明显方法。你知道任何解决方法吗?

4

2 回答 2

5

您可以创建一个计时器,它会在第二秒检查视频是否已达到某个时间戳。为了限制不必要的函数调用,仅在到达您设定的时间时才开始时间

var timeout = setTimeout(function(){
  var interval = setInterval(function(){
    if(player.getCurrentTime() === <you_set_time>){
        clearInterval(interval);
        // Your logic
    }

  },1000);
},<your_set_time_in_millisecs>);
于 2012-06-27T16:14:08.603 回答
2

为避免不必要的处理,您可以等待播放器进入 PLAYING 状态,然后,将剩余时间放入一个 setTimeout 函数,直到时间戳。

在缓冲的情况下,每当播放器恢复播放状态时,调用相同的函数,清除之前的 setTimeout 并设置新的(如果剩余时间为正)

这是 jsfiddle POC:http: //jsfiddle.net/V6rgy/

于 2012-09-21T17:49:41.310 回答