Bilibili-Evolved/min/default-live-quality.min.js
2020-10-07 09:53:45 +08:00

1 line
1.1 KiB
JavaScript

(()=>{return(t,l)=>{(async()=>{if(!document.URL.match(/^https:\/\/live.bilibili.com\/(blanc\/)?(\d+)/)){return}const l=Resource.all.useDefaultLiveQuality.dropdown;const e=l.items;const i=t.defaultLiveQuality;const o=await SpinQuery.select(".bilibili-live-player-video-controller-switch-quality-btn");if(o===null){console.warn("qualitySettings null");return}const n=async()=>{const t=o.children[0].getAttribute("data-title");if(t==="4K"&&i==="原画"){console.log("stop for 4K");return}const l=dqa(o,".bilibili-live-player-video-controller-html-tooltip-option .text-btn");const n=l.map(t=>t.getAttribute("data-title"));console.log(t,n,i);if(t!==i){let t=i;while(!n.includes(t)){const l=e.indexOf(t);if(l>=e.length-1){console.log("reached lowest quality");return}t=e[l+1]}const o=l[n.indexOf(t)];console.log(o);while(!(o.classList.contains("active")||dq(".bilibili-live-player-video-controller-switch-quality-info"))){await(()=>new Promise(t=>setTimeout(()=>t(),3e3)))();o.click();console.log("click")}}};Observer.childList(o,()=>{console.log(o.childElementCount);if(o.childElementCount>0){n()}})})()}})();