解决视频防挂定时暂停或者做了切入后台等操作自动暂停的问题

您所在的位置:网站首页 大学生创业基础网络课考试答案 解决视频防挂定时暂停或者做了切入后台等操作自动暂停的问题

解决视频防挂定时暂停或者做了切入后台等操作自动暂停的问题

2023-12-31 20:15| 来源: 网络整理| 查看: 265

(本博客所介绍的方法不一定完全有效,有效的请点赞一波😋😋,无效的就当学习学习原理)

实现 一、防止定时自动暂停

定时暂停一般是通过某个函数设置定时器在指定的时间后(如300000ms)通过 pause() 方法暂停并弹出提示窗口,只有当点击窗口中的按钮后才会继续播放.

第一步: 打开浏览器的开发者工具,找到搜索选项

开发者工具不同浏览器打开方式不同, Edge和Google可以按下 ctrl+shift+i打开; 搜索选项在打开开发者工具后,可以按下ctrl+shift+f打开

请添加图片描述

第二步: 在搜索中查找 pause() , 定位到实现定期暂停的函数,并记录下函数名

请添加图片描述

请添加图片描述

查找后一般都能很容易的实现该功能的函数,因为我对比了几个会定期暂停的网页,发现它们该部分的代码出奇的一致,可能这就是码农的搬运能力把~~~

有一些网站可能将js代码打包压缩然后又不加注释,这时候可能会难以辨别,但耐心看总能看懂的(

我们看一下上下文,发现了一个这样的函数

// 监听播放事件 player.on('play', function (event) { current_time(); // studyTime(); loop_flag = setTimeout("loop_pause()", 300000); });

目光聚焦 setTimeout 定时器传入的参数,第二个是设定的时间,单位是毫秒,第一个是回调函数,表示设定毫秒数后调用这个函数,我们从英文就可以看出意思,表示300秒后就会启动一次定期暂停。

第三步: 打开控制台(console),用空函数体覆盖原函数

该网站实现自动暂停的函数是 loop_pause() ,所以空函数体的函数名就是 loop_pause

function loop_pause() {}

输入后按下回车生效: 在这里插入图片描述

该方法利用的是js的重名函数生效规则,后面出现(加载)的函数会覆盖掉前面函数代替生效。当然也可以实现在自动暂停后自动点击相关按钮,这样风险更小。

二、防止切后台等操作导致自动暂停

切后台暂停常常通过设置默认的一些事件比如鼠标移出、窗口隐藏等,在它们的回调函数中使用 pause() 方法,在事件监听中将这些事件移除就可以了,非常方便

第一步: 打开浏览器的开发者工具,在元素(Element)一栏找到事件监听器(Event Listenner)

可以发现这里在监听许多事件的发生,从他们的名字中我们可以推测出意思 例如:click表示点击、focus表示输入框聚焦等

在这里插入图片描述

第二步: 明白导致视频自动暂停的操作,点开这些事件把它们移除(remove)即可

比如该网站是在切换到其它页面时就会自动暂停,那么我们找到 visibilitychange 这个事件,点开后有个移除按钮,点击即可实现

在这里插入图片描述 有的网站要求你的鼠标必须在视频范围内,不然就会自动暂停,这时将 mouseout 这个事件移除即可



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3