您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
删除网页中的 blur 和 visibilitychange 事件监听器,防止视频暂停或网页限制后台播放。
// ==UserScript== // @name 阻止网页视频自动暂停 // @namespace http://tampermonkey.net/ // @version 1.1 // @description 删除网页中的 blur 和 visibilitychange 事件监听器,防止视频暂停或网页限制后台播放。 // @author you // @match *://*/* // @run-at document-start // @license MIT // ==/UserScript== (function() { 'use strict'; // 屏蔽 window/document 的 onblur/onvisibilitychange Object.defineProperty(window, 'onblur', { set: () => {}, get: () => null }); Object.defineProperty(window, 'onvisibilitychange', { set: () => {}, get: () => null }); Object.defineProperty(document, 'onvisibilitychange', { set: () => {}, get: () => null }); // 劫持 addEventListener const rawAddEventListener = EventTarget.prototype.addEventListener; EventTarget.prototype.addEventListener = function(type, listener, options) { if (type === 'blur' || type === 'visibilitychange') { console.log('[Tampermonkey] 阻止事件监听:', type); return; // 不注册这类事件 } return rawAddEventListener.call(this, type, listener, options); }; // 劫持 removeEventListener 防止报错 const rawRemoveEventListener = EventTarget.prototype.removeEventListener; EventTarget.prototype.removeEventListener = function(type, listener, options) { if (type === 'blur' || type === 'visibilitychange') { return; // 假装已经移除了 } return rawRemoveEventListener.call(this, type, listener, options); }; // 清理已绑定的事件(如果脚本注入稍晚) window.addEventListener('DOMContentLoaded', () => { window.onblur = null; document.onvisibilitychange = null; }); })();