// ==UserScript== // @name 哔哩哔哩bilibili默认宽屏 // @namespace https://greasyfork.org/scripts/404862-%E5%93%94%E5%93%A9%E5%93%94%E5%93%A9bilibili%E9%BB%98%E8%AE%A4%E5%AE%BD%E5%B1%8F/code/%E5%93%94%E5%93%A9%E5%93%94%E5%93%A9bilibili%E9%BB%98%E8%AE%A4%E5%AE%BD%E5%B1%8F.user.js // @version 2023.6.13.01 // @icon https://www.bilibili.com/favicon.ico // @icon64 https://s1.ax1x.com/2020/06/17/NV4aEq.png // @description Bilibili默认宽屏/全屏(自动点击按钮) // @author cngege 优化 // @match *://*.bilibili.com/video/* // @match *://*.bilibili.com/watchlater/* // @match *://*.bilibili.com/bangumi/play/* // @match *://*.bilibili.com/medialist/play/* // @grant GM_registerMenuCommand // @grant GM_unregisterMenuCommand // @grant GM_setValue // @grant GM_getValue // @require https://cdn.jsdelivr.net/npm/jquery@3.4.0/dist/jquery.min.js // @run-at document-end // @license MIT // @downloadURL none // ==/UserScript== (function() { 'use strict'; let wordtype = GM_getValue("wordtype",0); // 0 ~ 1; let menu_command = null; // 如果配置中的指示当前是默认宽屏 则注册一个菜单命令 - [当前]默认宽屏 if(wordtype == 0){ menu_command = GM_registerMenuCommand("[当前]默认宽屏", MenuCommand); }else{ menu_command = GM_registerMenuCommand("[当前]默认网页全屏", MenuCommand); } function MenuCommand(){ if(menu_command != null){ GM_unregisterMenuCommand(menu_command); menu_command = null; } if(wordtype == 0){ wordtype = 1; menu_command = GM_registerMenuCommand("[当前]默认网页全屏", MenuCommand); } else { wordtype = 0; menu_command = GM_registerMenuCommand("[当前]默认宽屏", MenuCommand); } GM_setValue("wordtype",wordtype); } var counter=0; let iscensor = true; // 当前页面是否需要检查 let url = geturl();// 获取刚加载脚本时的Url setTimeout(censor,1000); go(); function go(){ counter++; // 表示宽屏而不是网页全屏 if(wordtype == 0){ if(geturl().indexOf("bilibili.com/bangumi/play/") != -1){//如果是番剧页面 let bangumivideo = $(".bpx-docker.bpx-docker-major div.bpx-player-container"); let bangumi = $(".squirtle-video-widescreen.squirtle-video-item");//bpx-player-ctrl-btn if(bangumivideo.length > 0 && bangumi.length > 0){ //如果是默认的模式 if(bangumivideo.attr("data-screen") == "normal"){ bangumi.click(); iscensor=false; }else if(bangumivideo.attr("data-screen") == "wide"){ return; } } } else{ if($(".bpx-player-ctrl-btn.bpx-player-ctrl-wide").length){ setTimeout(function(){$(".bpx-player-ctrl-btn.bpx-player-ctrl-wide:not(.bpx-state-entered)").click();iscensor = false;},500); } else if($(".bilibili-player-video-btn.bilibili-player-video-btn-widescreen").length){ setTimeout(function(){document.querySelector(".bilibili-player-video-btn.bilibili-player-video-btn-widescreen:not(.closed)").click();iscensor = false;},500); } } } // 表示是网页全屏 wordtype == 1 else{ if(geturl().indexOf("bilibili.com/bangumi/play/") != -1){//如果是番剧页面 let bangumivideo = $(".bpx-docker.bpx-docker-major div.bpx-player-container"); let bangumi = $(".squirtle-video-pagefullscreen.squirtle-video-item"); if(bangumivideo.length > 0 && bangumi.length > 0){ //如果是默认的模式 if(bangumivideo.attr("data-screen") == "normal"){ bangumi.click(); iscensor=false; }else if(bangumivideo.attr("data-screen") == "web"){ return; } } } else{ if($(".bpx-player-ctrl-btn.bpx-player-ctrl-web").length){ setTimeout(function(){$(".bpx-player-ctrl-btn.bpx-player-ctrl-web:not(.bpx-state-entered)").click();iscensor = false;},500); } else if($(".bilibili-player-video-btn.bilibili-player-video-web-fullscreen").length){ setTimeout(function(){$(".bilibili-player-video-btn.bilibili-player-video-web-fullscreen:not(.closed)").click();iscensor = false;},500); } } } //同一个URL页面最多只执行30次 if(counter>30){ iscensor = false; return; } setTimeout(go,300); } //每2秒循环执行判断一次 否则本页面切换视频脚本不重复执行 // 每次在同页中切换URL,就会执行一次GO(); function censor(){ if(url!=geturl()){ counter=0; go(); url = geturl(); } setTimeout(censor,2000); } function geturl(){ return window.location.href; } })();