几个常用视频处理的JS代码

通常在网络视频课程学习时,获得学习积分有两类:

第一类: 通过用户心跳检测用户是否在线,同时服务器端根据在线时长与其它逻辑积分。
第二类: 通过看完视频(发出ended事件)、视频播放时间达到临近结尾时、视频播放经过事先设定的几个时间锚点时等逻辑来触发得到积分(本贴仅讨论这类)。
争对这类触发方式,用以下三行代码来分别对应:
1. 直接发送视频观看完成事件:

document.querySelector("video").dispatchEvent(new Event("ended"))

2. 直接设置视频播放到结尾:

var v=document.querySelector("video");
if(v){
    v.muted=true;
    v.currentTime=Math.floor(v.duration);
    v.play();
}

3. 高倍速播放【插件市场上已经有很多倍速播放视频的插件,可直接安装使用】:

 var v=document.querySelector("video");
if(v){
    v.muted=true;
    v.playbackRate=2;//0.1-16任意设置
    v.play();
}

运行办法:

运行方法如下(以第一种方案的代码为例,其它方案只是要运行的代码不同):
(1) 在观看视频的页面地址栏输入【适用于临时执行一次】

javascript: var v=document.querySelector("video");if(v){v.muted=true;v.playbackRate=2;v.play();}

【注意javascript:】这个单词和冒号在地址栏是不能粘贴的,只能手动输入

(2) 把代码添加到收藏夹中,要运行时就点击一下【适用于反复执行】。

(3) 也可以在观看视频的页面按F12打开浏览器的控制台,选择Console(控制台)在 > 后面输入然后回车【适用于执行多行或者需要查看返回信息的情况】

· END ·