首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >每30秒Plyr.js存储一次用户视频进度

每30秒Plyr.js存储一次用户视频进度
EN

Stack Overflow用户
提问于 2021-03-04 01:55:49
回答 1查看 215关注 0票数 1

我试图获得一个当前的视频进步值每5秒,这样我就可以使一个帖子到数据库,以存储它对用户视频进度表使用JS和Plyr.js应用程序接口,但显然做错了什么。我的代码:

代码语言:javascript
复制
player.on('timeupdate', () => {
        const currentTime = document.getElementById('current-time');
        currentTime.innerText = player.currentTime;
        let intervalId = setInterval( () => {
          console.log(`Submitted timestamp to DB every 5 sec`)
        }, 5000);
        if (intervalId) {
          clearInterval(intervalId);
        }
        //console.log(player.currentTime);
      });

上面的代码根本不会触发console.log。如果我删除clearInterval(),console.log会在5秒后触发,但每秒钟重复一次,而不是在5秒之后。

EN

回答 1

Stack Overflow用户

发布于 2021-03-04 05:53:46

找到解决方案后,拖网Plyr文档,收听播放是一个选项:

代码语言:javascript
复制
player.on('play', () => {
        setInterval( function() {
          // POST current time and state to the server
          console.log(player.currentTime);
          const currentTime = document.getElementById('current-time');
          currentTime.innerText = player.currentTime;
        }, 3000);
        //console.log(player.currentTime);
      });
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66462391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档