Javascript Youtube api getDuration方法返回相同的计时

Javascript Youtube api getDuration方法返回相同的计时,javascript,youtube-api,Javascript,Youtube Api,我使用Youtube api编写了这个脚本。它在指定的时间段在视频上滑动覆盖框 除了player.getDuration():Number方法外,所有操作都很顺利。它不断返回相同的时间,并且不会随着视频的进展而前进 下面是相关的代码。这里有完整的代码 init方法将youtube播放器obj存储在Player变量中,并使用setInterval每秒运行activateOverlay activateOverlay获取视频的当前运行时间,并检查是否是激活覆盖的时间 var vidPlugin =

我使用Youtube api编写了这个脚本。它在指定的时间段在视频上滑动覆盖框

除了player.getDuration():Number方法外,所有操作都很顺利。它不断返回相同的时间,并且不会随着视频的进展而前进

下面是相关的代码。这里有完整的代码

init方法将youtube播放器obj存储在Player变量中,并使用setInterval每秒运行activateOverlay

activateOverlay获取视频的当前运行时间,并检查是否是激活覆盖的时间

var vidPlugin = (function() {
  var data,
      player,

      activateOverlay = function() {
        // get the current time
        var t = player.getDuration(),
            keys = Object.keys(data);

        for (key in data) {
          if (data.hasOwnProperty(key)) {
            if (t >= data[key].start && t <= data[key].end) {
              showOverlay(key);
            }
          }
        }
        if (t >= data[key].end) {
          hideOverlay();
        }
      },

      init = function(youtubeObj, dataObj) {
        data = dataObj;
        player = youtubeObj;

        var wrapper = document.getElementById("wrapper");

        generateOverlay();

        wrapper.addEventListener("click", runModal);
      },

      handler = function(e) {
        if (e.data === 1) {
          // if playing run activateOverlay function every second
          int = setInterval(function() {
            activateOverlay();
          }, 1000);
          wrapper.className = "wrapper wrapper-hide";
        }

        if (e.data === 2) {
          // paused
          clearInterval(int);
          wrapper.className = "wrapper wrapper-show scale-up-hor-right";
        }
      };

      return {
        init: init,
        handler: handler
      }
}());

window.onload = function() {
  vidPlugin.init(player, {
    0:{
      Name: "Item 1",
      Image: "https://via.placeholder.com/45",
      Description: "ipsom Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
      start: 1,
      end: 5
    },
    1:{
      Name: "Item 2",
      Image: "https://via.placeholder.com/45",
      Description: "ipsom Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
      start: 7,
      end: 11
    }
    }
  });
}
var vidPlugin=(函数(){
var数据,
玩家,
activateOverlay=函数(){
//获取当前时间
var t=player.getDuration(),
keys=对象。keys(数据);
用于(输入数据){
if(data.hasOwnProperty(key)){
如果(t>=data[key].start&&t=data[key].end){
hideOverlay();
}
},
init=函数(youtubeObj,dataObj){
数据=数据对象;
player=youtubeObj;
var wrapper=document.getElementById(“wrapper”);
generateOverlay();
addEventListener(“单击”,运行模式);
},
handler=函数(e){
如果(例如,数据===1){
//如果正在播放,请每秒运行activateOverlay功能
int=setInterval(函数(){
激活Overlay();
}, 1000);
wrapper.className=“包装隐藏”;
}
如果(例如,数据===2){
//停顿
清除间隔(int);
wrapper.className=“wrapper wrapper show scale up hor right”;
}
};
返回{
init:init,
处理程序:处理程序
}
}());
window.onload=函数(){
vidPlugin.init(播放器{
0:{
名称:“项目1”,
图像:“https://via.placeholder.com/45",
说明:"我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识,我的知识是我的知识,我的知识,我的知识是我的知识,我的知识,我的知识,我的知识是我的知识,我的知识,我的知识,我的知识,我的知识,我的知识,我的知识,我你的圣约翰不轻率,必须为自己的劳动承担责任。”,
起点:1,
完:5
},
1:{
名称:“项目2”,
图像:“https://via.placeholder.com/45",
说明:“我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识是我的知识,我的知识,我的知识是我的知识,我的知识,我的知识是我的知识,我的知识,我的知识,我的知识是我的知识,我的知识,我的知识,我的知识,我的知识,我的知识,我的知识,我你的圣约翰不轻率,必须为自己的劳动承担责任。”,
开始时间:7点,
完:11
}
}
});
}

我使用了错误的方法

player.getCurrentTime():数字提供以秒为单位的经过时间