// ==UserScript== // @name 通用禁用自动播放(bilibili专用) // @namespace https://www.bilibili.com/ // @version 3.3 // @description 阻止所有网站视频自动播放;B站专有优化,通用网站点击视频容器或按空格开始播放(稳定无暂停) // @author You // @match *://*.*.com/* // @match *://*.com/* // @match *://*.*.net/* // @match *://*.net/* // @match *://*.*.xyz/* // @match *://*.xyz/* // @match *://*.*.*.cn/* // @match *://*.*.cn/* // @match *://*.cn/* // @match *://*.*.ai/* // @match *://*.ai/* // @exclude https://store.steampowered.com/* // @run-at document-start // @grant none // ==/UserScript== (function () { 'use strict'; const isBili = window.location.hostname === 'www.bilibili.com'; if (isBili) { initBilibili(); } else { initGeneric(); } // ==================== 通用版本(非 B 站)==================== function initGeneric() { let allowNextPlay = false; const MARK_DURATION = 500; // 标记有效时间(毫秒) let lastActiveVideo = null; // 最后一次交互的视频元素 function consumeAllow() { if (allowNextPlay) { allowNextPlay = false; return true; } return false; } function setAllowFlag() { allowNextPlay = true; clearTimeout(window.__autoplayBlock_timeout); window.__autoplayBlock_timeout = setTimeout(() => { allowNextPlay = false; }, MARK_DURATION); } // 判断元素是否位于包含