记一次视频播放后关闭再回来接着上次播放的解决方法

借用节流方法对视频播放进行记录

1、使用video.ontimeupdate 方法进行记录;

 <div class="container">
        <div class="video">
            <video id='myVideo' controls>
                <source src="./video/地球脉动第二季01.mp4" />
            </video>
        </div>
    </div>

// js 部分
const throttle = (fn, t) => { // 上一次的事件 let prevTime = 0; const _throttle = function (...args) { // 获取当前事件的触发事件 let nowTime = Date.now(); // 用现在时间减去上次时间的间隔和 规定的时间做对比,如果大于等于就执行 if (t <= (nowTime - prevTime)) { // fn(); // 传递参数,绑定this; fn.apply(this, args) prevTime = nowTime; } } return _throttle } // 获取元素 对视频进行操作 const video = document.querySelector('video'); video.ontimeupdate = throttle(() => { // console.log(video.currentTime); // 存储当前时间 localStorage.setItem('current', video.currentTime) }, 1000)

2、使用video.onloadeddata 方法 进行播放的时候赋值,video.onloadeddata  方法页面刚进来的点击播放的时候只执行一次,所以用这个方法效果很好。done !

1 // 打开页面触发事件,从本地存储拿出记录的时间 赋值给 video.currentTime
2         video.onloadeddata = function(){
3             console.log('onloadeddata')
4             let timeHistory = localStorage.getItem('current');
5             video.currentTime = timeHistory;
6        }

 

 

  

 

posted @ 2024-11-21 16:31  peter_sdl  阅读(133)  评论(0)    收藏  举报