您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Removes twitch stream and fix layout for better readability and usability.
// ==UserScript== // @name Fextralife Remove Twitch and Fix Layout // @namespace https://gitlab.com/Dwyriel // @version 1.4.0 // @description Removes twitch stream and fix layout for better readability and usability. // @author Dwyriel // @license MIT // @match https://*.fextralife.com/* // @grant none // @homepageURL https://gitlab.com/Dwyriel/Greasyfork-Scripts // ==/UserScript== (function () { 'use strict'; const formMinMargin = 8, formMaxMargin = 60 - formMinMargin; const desktopWidth = 1200, largeMobile = 600, buggyNavbarBreakpoint = 1218; const containerFluid = document.querySelector(".container-fluid.fex-bg-image"); const fexMainContainer = document.querySelector(".fex-main-sidebar-container"); const fexMain = document.querySelector(".fex-main"); const sticky = document.querySelector(".sticky"); const navbar = document.querySelector(".navbar"); const wikiHeader = document.querySelector(".wiki-header-container"); const navbarMenux = document.getElementById("navMenux"); const pageChunk = document.querySelector(".page-chunk"); const form = document.getElementById("form-header"); const discussionNew = document.getElementById("discussions-new").parentNode; const removeStreamAndSidebar = () => { document.getElementById("sidebar-wrapper")?.remove(); document.getElementsByClassName("side-bar-right")[0]?.remove(); document.getElementById("fextrastream")?.remove(); }; //makes the main content look good on bigger screens and remove the giant spacing on the upper part const oneShotFixes = () => { fexMain.style = "max-width: 1024px;"; form.style = "max-height: 60px; margin-top: 0px;"; sticky.style.top = "80px"; navbarMenux.style.overflowY = "auto"; }; //UPDATE: They finally fixed the problem below, leaving code here in case it gets messed up in the near future //navbar won't show up when width is between 1200 and 1218 otherwise const navbarFix = (windowWidth) => { navbar.style = windowWidth > desktopWidth && windowWidth < buggyNavbarBreakpoint ? "display: block !important" : ""; }; //Bunch of small changes to make it look more consistent const smallSpacingFixes = (windowWidth) => { discussionNew.style.setProperty("padding", "0px", "important"); fexMainContainer.style.padding = "0px"; containerFluid.style.padding = "0px"; let marginSize = "0px"; if (windowWidth > desktopWidth) { marginSize = "auto"; sticky.style.position = "absolute"; pageChunk.style.marginLeft = "0px"; form.style.height = `${formMaxMargin}px`; } else { sticky.style.position = "sticky"; wikiHeader.style.marginTop = "11rem"; form.style.height = `${formMinMargin}px`; } fexMain.style.marginLeft = marginSize; fexMain.style.marginRight = marginSize; }; //function to be called every 'resize' event const fixLayout = () => { let windowWidth = window.innerWidth; //navbarFix(windowWidth); smallSpacingFixes(windowWidth); }; removeStreamAndSidebar(); oneShotFixes(); fixLayout(); window.addEventListener('resize', () => fixLayout()); })();