最近需要线上学习,这网站视频几分钟一个,要学几百个,学到要吐了,想修改计时逻辑快速完成,查看了网页js,尝试修改,但是不成功,麻烦各位大哥看看。(以下两段是我觉得可能有用的代码)
我猜测网站通过两种计时方式监视事件,一个是本地计算机时间,另一个是网页运行时间,防止用加速插件快速完成。
网上的加速脚本也尝试过,可以加速看视频,也可以用脚本10秒10秒的快进,但是最终观看时间还是原来的样子,网站设定视频播放状态下20秒纪录一次时间的。
{
getVideoStatus: function(e)
{
return 1 == e ? "未学习" : 2 == e ? "学习中" : 3 == e ? "已学习" : "";
},
secondToTimeStr: function(e)
{
if (e)
{
e = Math.round(e);
if (e < 60){//1分钟以内
let i = e;
return "00:" + (i < 10 ? "0" + i : i);
}
if (e < 3600){//1小时以内
let t = parseInt(e / 60);
let i = e % 60;//秒
return (t < 10 ? "0" + t : t) + ":" + (i < 10 ? "0" + i : i);
}
if (3600 <= e){//大于1小时
var t = parseInt(e % 3600 / 60);
var i = e % 60;
let s = parseInt(e / 3600);
return (s < 10 ? "0" + s : s) + ":" + (t < 10 ? "0" + t : t) + ":" + (i < 10 ? "0" + i : i)
}
}
}
}`
还有这段
formatTime: function(seconds, ishours) {
var tSeconds = '',
tMinutes = '',
tHours = '';
if (isNaN(seconds)) {
seconds = 0;
}
var s = Math.floor(seconds % 60),
m = 0,
h = 0;
if (ishours) {
m = Math.floor(seconds / 60) % 60;
h = Math.floor(seconds / 3600);
} else {
m = Math.floor(seconds / 60);
}
tSeconds = (s < 10) ? '0' + s: s + '';
tMinutes = (m > 0) ? ((m < 10) ? '0' + m + ':': m + ':') : '00:';
tHours = (h > 0) ? ((h < 10) ? '0' + h + ':': h + ':') : '';
if (ishours) {
return tHours + tMinutes + tSeconds;
} else {
return tMinutes + tSeconds;
}
},