我试图获得一个当前的视频进步值每5秒,这样我就可以使一个帖子到数据库,以存储它对用户视频进度表使用JS和Plyr.js应用程序接口,但显然做错了什么。我的代码:
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秒之后。
发布于 2021-03-04 05:53:46
找到解决方案后,拖网Plyr文档,收听播放是一个选项:
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);
});https://stackoverflow.com/questions/66462391
复制相似问题