// ==UserScript== // @name Better Live UX // @name:zh-CN 更好的直播体验(最高清晰度、禁弹幕、禁广告) // @namespace lhzbxx // @version 2021.02.05 // @description 自动选择最高清晰度、禁止弹幕、禁止广告。 // @author lhzbxx // @run-at document-idle // @noframes // @require https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js // @require https://greasyfork.org/scripts/2199-waitforkeyelements/code/waitForKeyElements.js?version=6349 // @match *://live.bilibili.com/* // @match *://www.douyu.com/* // @match *://www.huya.com/* // @match *://egame.qq.com/* // @license MIT // @downloadURL none // ==/UserScript== const config = { huya: { selectors: [ '#player-danmu-btn[title="关闭弹幕"]', 'ul.player-videotype-list > li:nth-child(1)', 'div.ab-close-btn', // '#player-fullpage-btn', ], timeout: 2400, }, douyu: { selectors: [ `div[class^='showdanmu-']`, `div[class^='tip-'] > ul > li:nth-child(1)`, // `div[class^='wfs']:not([class^='wfs-exit'])`, ], }, bilibili: { init: () => { document.querySelector('#live-player').dispatchEvent(new MouseEvent('mousemove')); document.querySelector('.quality-wrap').dispatchEvent(new MouseEvent('mouseenter')); }, selectors: [ '.quality-wrap > div > div.quality-it:nth-child(2)', // 'div.danmaku', ], }, qq: { selectors: [ 'div.vcp-extended-barrage', 'a.vcp-vertical-switcher-item-clarity:nth-child(1)', // 'div.vcp-extended-webfullscreen', ], }, } const site = config[document.domain.split('.').reverse()[1]]; (function() { 'use strict'; if (!site) { return; } site.init && site.init(); site.selectors.forEach(selector => { setTimeout(() => { waitForKeyElements(selector, (node) => { node.click(); }); }, site.timeout || 0); }); })();