- // ==UserScript==
- // @name 微信读书
- // @icon https://weread.qq.com/favicon.ico
- // @namespace https://gf.qytechs.cn/users/878514
- // @version 20230728
- // @description WeReadSytle
- // @author Velens
- // @match https://weread.qq.com/web/reader/*
- // @require https://code.jquery.com/jquery-3.6.0.min.js
- // @license MIT
- // @grant GM_addStyle
- // @grant GM_registerMenuCommand
- // @grant GM_setValue
- // @grant GM_getValue
- // ==/UserScript==
-
-
- //正文
- //GM_addStyle(".readerContent .app_content {max-width: 100%; !important;}");
- //GM_addStyle(".wr_whiteTheme .readerContent .app_content {background-color: #C7EDCC; !important;}");
- //GM_addStyle(".wr_whiteTheme .readerChapterContent {color: #444444; !important;}");
- //导航栏
- //GM_addStyle(".readerTopBar {max-width: 100%; !important;}");
- //GM_addStyle(".wr_whiteTheme .readerTopBar {background-color: #C7EDCC; !important;}");
- //滚动条
- //GM_addStyle("body::-webkit-scrollbar {display: none; !important;}");
- //浮动菜单
- //GM_addStyle(".readerControls {margin-left: 46%; !important;}");
- //GM_addStyle(".readerControls {align-items: flex-end; !important;}");
-
-
- const widths = [{width:"100%",align_items:"flex-end",margin_left:"45.5%"},{width:"80%",align_items:"center",margin_left:"41.5%"},{width:"默认",align_items:"flex-start",margin_left:""}];
- const footers = [{titlet:"隐藏",padding:"20px"},{titlet:"显示",padding:"40px"},{titlet:"默认",padding:""}];
- const scrollbars = [{titles:"滚动条:隐藏",displays:"none"},{titles:"滚动条:显示",displays:"auto"}];
- const colors = [{titlec:"豆沙绿",RGB:"#C7EDCC"},{titlec:"杏仁黄",RGB:"#FAF9DE"},{titlec:"秋叶褐",RGB:"#FFF2E2"},{titlec:"胭脂红",RGB:"#FDE6E0"},{titlec:"海天蓝",RGB:"#DCE2F1"},{titlec:"葛巾紫",RGB:"#E9EBFE"},{titlec:"极光灰",RGB:"#EAEAEF"},{titlec:"青草绿",RGB:"#E3EDCD"},{titlec:"银河白",RGB:"#FFFFFF"}];
- var numw,iw = GM_getValue("numw",0);
- var numo,io = GM_getValue("numo",0);
- var nums,is = GM_getValue("nums",0);
- var numc,ic = GM_getValue("numc",0);
-
- GM_registerMenuCommand("宽度:" + widths[iw].width,width)
- if(widths[iw].width != "默认"){
- GM_addStyle(`.readerContent .app_content, .readerTopBar {max-width: ${widths[iw].width}; !important;}`);
- GM_addStyle(`.readerControls {align-items: ${widths[iw].align_items}; !important;}`);
- GM_addStyle(`.readerControls {margin-left: ${widths[iw].margin_left}; !important;}`);}
- function width(){
- if(iw < widths.length-1){iw++;}
- else{iw = 0;}
- GM_setValue("numw",iw);
- location.reload();
- };
-
- GM_registerMenuCommand("页脚:" + footers[io].titlet,Footer);
- if(footers[io].titlet != "默认"){
- GM_addStyle(`.readerFooter {padding: ${footers[io].padding};}`);
- GM_addStyle(".readerFooter_button {font-weight: 600;}");}
- if(footers[io].titlet == "隐藏"){
- GM_addStyle(`.wr_whiteTheme .readerFooter_button {background-color: ${colors[ic].RGB}; !important;}`);}
- function Footer(){
- if(io < footers.length-1){io++;}
- else{io = 0;}
- GM_setValue("numo",io);
- location.reload();
- };
-
- GM_registerMenuCommand(scrollbars[is].titles,scrollbar);
- GM_addStyle(`body::-webkit-scrollbar {display: ${scrollbars[is].displays}; !important;}`);
- function scrollbar(){
- if(is < scrollbars.length-1){is++;}
- else{is = 0;}
- GM_setValue("nums",is);
- location.reload();
- };
-
- GM_registerMenuCommand("背景色:" + colors[ic].titlec,color);
- GM_addStyle(`.wr_whiteTheme .readerContent .app_content, .wr_whiteTheme .readerTopBar, .wr_whiteTheme .readerControls_fontSize, .wr_whiteTheme .readerControls_item {background-color: ${colors[ic].RGB}; !important;}`);
- function color(){
- if(ic < colors.length-1){ic++;}
- else{ic = 0;}
- GM_setValue("numc",ic);
- location.reload();
- };
-
- const scrollTops = ["沉浸式阅读:开启","沉浸式阅读:关闭"];
- let flagt = GM_getValue("flagt",true);
- if(flagt){
- GM_registerMenuCommand(scrollTops[0],scrollTop);
- (function (){
- /* globals jQuery, $, waitForKeyElements */
- $(window).scroll(function(){
- var scroll = $(this).scrollTop();
- var paddingtop = $(".navBarOffset").css("padding-top");
- var lineheight = $(".readerHeaderButton").css("line-height");
- var scrollTop = parseFloat(paddingtop) + parseFloat(lineheight);
- var readerTopBar = document.getElementsByClassName("readerTopBar")[0];
- var readerControls = document.getElementsByClassName("readerControls")[0];
- if(scroll <= scrollTop){
- // 顶部显示
- readerTopBar.style.display = "flex";
- readerControls.style.display = "flex";
- }else{
- // 下滑隐藏
- readerTopBar.style.display = "none";
- readerControls.style.display = "none";
- }
- });
- })();
- }
- else{
- GM_registerMenuCommand(scrollTops[1],scrollTop);
- }
- function scrollTop(){
- flagt = !flagt;
- GM_setValue("flagt",flagt);
- location.reload();
- };
-