单击进度条并了解视频之前(和之后)的计时器



我正在使用Videojs,我需要知道何时使用时间线进行导航。特别是我想要点击栏时播放器的"当前时间",以及点击它的计时器(但很简单,我会解释(

通过使用myPlayer.currentTime((,我可以获取视频的计时器,因此我使用诸如"onclick"或"onmousedown"之类的eventListener,尽管我可以在单击时获取视频的计时器。但它只给了我之后的计时器。

这并不容易解释,所以这是一个例子:进度条计时器当前为 0:01,我在 0:14 单击。如何从玩家那里获得"0:01",哪个事件

这是我的事件,但我得到了新的计时器

myPlayer.controlBar.progressControl.on('mouseup', function (event) {
            console.log(myPlayer.currentTime());
});

什至尝试其他事件,在其他元素上,例如鼠标按下,它也给了我计时器之后,当我直接单击滑块时不会触发

myPlayer.controlBar.progressControl.on('mousedown', function (event) {
            console.log(myPlayer.currentTime());
});

我尝试了很多东西,没有一个有效,你有什么想法吗?

VideoJS库提供了一个漂亮的小事件,可能对你的用例有用:timeupdate

只需设置一个全局变量 previousTime,并在每次触发 timeupdate 事件时更新它。单击进度条后,您可以通过上一个时间获取时间。

var previousTime;
myPlayer.controlBar.progressControl.on('mousedown', function(event) {
  console.log("previous: " + previousTime + " current:" + myPlayer.currentTime());
});
myPlayer.on("timeupdate", function(e) {
  previousTime = myPlayer.currentTime();
});

最新更新