一、应用场景
二、加速网页视频与跳过网页视频
1、加速网页视频
(2)控制台输入脚本
function accelerate() {
let video = document.querySelector('video');
function play() {
video.playbackRate = 15; // 加速至原速的15倍
video.play();
}
setInterval(play, 100); // 定时播放,防止被js恢复原速或暂停
}
accelerate()
实战
(1)适用于爱奇艺、优酷
var interval_id
function accelerate() {
let video = document.getElementsByTagName('video');
for (let i=0; i<video.length; i++) {
try {
if (video[i].duration<131) { // 根据时长判断是否为广告
video[i].playbackRate = 15; // 加速至原速的15倍
if (!video[i].isPlay) {
video[i].play()
}
}else{video[i].playbackRate=1}
}catch(err){console.log(err)}
}
}
interval_id = setInterval(accelerate, 800); // 定时播放,防止被js恢复原速或暂停
setTimeout('clearInterval(interval_id)',8000)
(2)适用于网课
function accelerate() {
let video = document.getElementsByTagName('video');
for (let i=0; i<video.length; i++) {
try {
video[i].playbackRate = 15; // 加速至原速的15倍
if (!video[i].isPlay) {
video[i].play()
}
}catch(err){console.log(err)}
}
}
setInterval(accelerate, 800); // 定时播放,防止被js恢复原速或暂停
2、跳过网页视频
function skip() {
let video = document.querySelector('video');
video.currentTime = video.duration;
/* duration获取视频时长,currentTime是视频当前的播放时间,
通过重置currentTime跳过视频 */
}
skip()
实战
(1)适用于优酷,但似乎不适用于跳过爱奇艺广告
var interval_id
function skip() {
let video = document.getElementsByTagName('video')
for (let i=0; i<video.length; i++) {
try {
if (video[i].duration<131) {
video[i].currentTime = video[i].duration
}
} catch(err) {console.log(err)}
}
}
interval_id = setInterval(skip,800)
setTimeout('clearInterval(interval_id)',600)
(2)适用于网课
function skip() {
let video = document.getElementsByTagName('video')
for (let i=0; i<video.length; i++) {
video[i].currentTime = video[i].duration
}
}
skip()