您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Twitch - Auto Best Video Quality (1440p, 1080p, 720p etc)
// ==UserScript== // @name Twitch - Auto Best Video Quality // @namespace http://tampermonkey.net/ // @version 1.2 // @description Twitch - Auto Best Video Quality (1440p, 1080p, 720p etc) // @author Martin______X // @match https://www.twitch.tv/* // @icon https://www.google.com/s2/favicons?sz=64&domain=twitch.tv // @grant none // @license MIT // ==/UserScript== let $url = ""; let $click_times = 0; let $step = 1; let $delay = 0; const simpleClick = (async (target, step)=>{ if(target){ target.click(); } if(step == 5){ $step = 1; $click_times++; }else{ $step++; } }); // const twitchVideoQualityInterval = setInterval(() => { let url = document.URL; if(url != $url){ // multi clicks check if($click_times == 1){ $click_times = 0; $url = url; $delay = 0; }else{ if($delay<200){ $delay++; }else{ try{ let settings_button = document.querySelectorAll('[ARIA-LABEL="Settings"]')[0]; if(settings_button && $step==1){ simpleClick(settings_button, 1); } let quality_button = document.querySelectorAll('[DATA-A-TARGET="player-settings-menu-item-quality"]')[0]; if(quality_button && $step==2){ simpleClick(quality_button, 2); } //data-a-target="player-settings-menu" let player_settings_menu = document.querySelectorAll('DIV[DATA-A-TARGET="player-settings-menu"]')[0]; if(player_settings_menu && $step==3){ let inputs = player_settings_menu.getElementsByTagName("INPUT"); if(inputs[1].hasAttribute("DISABLED")){ simpleClick(inputs[2], 3); }else{ simpleClick(inputs[1], 3); } } let main_menu = document.querySelectorAll('BUTTON[DATA-TEST-SELECTOR="main-menu"]')[0]; if(main_menu && $step==4){ simpleClick(main_menu, 4); } let menuitem = document.querySelectorAll('BUTTON[ROLE="menuitem"]')[0]; if(menuitem && $step==5){ simpleClick(menuitem, 5); } }catch{/*do nothing*/} } } } }, 1);