Bilibili-Evolved/min/default-video-quality.min.js
2020-10-30 17:42:34 +08:00

1 line
896 B
JavaScript

(()=>(e,a)=>{const t=[{name:"4K",value:120},{name:"1080P60",value:116},{name:"1080P+",value:112},{name:"1080P",value:80},{name:"720P60",value:74},{name:"720P",value:64},{name:"480P",value:32},{name:"360P",value:15},{name:"自动",value:0}];async function n(){const a=".bilibili-player-video-quality-menu .bui-select-list>li.bui-select-item";await SpinQuery.select(a);const n=dqa(a);if(!n){return}const[i]=n.map((e=>parseInt(e.getAttribute("data-value")))).sort(descendingSort((e=>e)));const[l]=t.filter((a=>a.name===e.defaultVideoQuality)).map((e=>e.value)).sort(descendingSort((e=>e)));const[u]=t.map((e=>e.value)).filter((e=>e<=Math.min(l,i))).sort(descendingSort((e=>e)));const s=await SpinQuery.select("video");function r(){n.forEach((e=>{if(parseInt(e.getAttribute("data-value"))===u){e.click()}}));this.removeEventListener("play",r)}s.addEventListener("play",r)}Observer.videoChange(n)})();