我的主要目标是7:45在视频中显示倒计时计时器,从20:00开始。
下面是我正在使用的jwplayer调用的事件:
onTime: function(event){showTimer(event.position);}这是我的函数showTimer:
function showTimer(video_position){
// Schedule the update to happen once every second
if(Math.round(video_position) == 465){
setInterval(updateTimer, 1000);
}
};问题是:因为它的onTime()不能保证在465.0的时候命中,所以我必须在视频位置上找到一个Math.round。如果我这样做,4-10个onTime事件处理程序会在465.0 - 466.0范围内中断,因此我的setInterval()会被多次调用,计时器计算得非常快。
有什么方法可以让它只命中setInterval()一次,或者可能是一个全局变量,我可以第一次设置它来让setInterval()知道它已经被删除了吗?
发布于 2014-05-29 12:44:36
我只需要使用一个布尔标志来检查事件是否已经启动。
var fired = false;
if(Math.round(video_position) == 465 && !fired){
fired = true;
setInterval(updateTimer, 1000);
}这样,它只能触发事件一次。
https://stackoverflow.com/questions/23933515
复制相似问题