Inftab手机端极简布局

用着不爽咱就改

// ==UserScript==
// @name         Inftab手机端极简布局
// @namespace    https://github.com/iMortRex
// @version      0.0.1
// @description  用着不爽咱就改
// @author       Mort Rex
// @run-at       document-start
// @icon         https://m.inftab.com/favicon.ico
// @match        https://m.inftab.com/
// @grant        GM.addStyle
// @license      MIT
// ==/UserScript==

(function () {
    'use strict';
    
    console.log('Inftab');

    // 变量
    var loopTimeout = 0;

    // 浏览器颜色
    // 深色模式背景颜色
    GM.addStyle('@media (prefers-color-scheme: dark) {:root {--mr-bg: rgba(27, 27, 31, 1); --mr-title: #fff;}}');
    // 浅色模式背景颜色
    GM.addStyle('@media (prefers-color-scheme: light) {:root {--mr-bg: rgba(253, 251, 254, 1); --mr-title: #000;}}');

    // 图标布局
    GM.addStyle('body {--main-top-space: 0px !important; --icon-height: 116px !important; --main-x-space: 28px !important; height: 100% !important; max-height: auto !important; min-height: auto !important;');
    GM.addStyle('.van-swipe__indicators {display: none !important;');
    GM.addStyle('.home-icon-item {margin: 0px var(--icon-margin) 30px var(--icon-margin) !important;');
    (function inftabLayoutLoop() {
        // 图标布局
        if (document.getElementsByClassName('van-swipe-item')[1] && document.getElementsByClassName('van-swipe-item')[1].children[0].children[0].children[0]) {
            for (let i = 0; i < document.getElementsByClassName('van-swipe-item').length; i++) {
                document.getElementsByClassName('van-swipe-item')[i].children[0].style.cssText += 'height: auto !important; padding: 25px calc(var(--main-x-space) - var(--icon-margin)) 0';
            }
            document.getElementsByClassName('home-main-content')[0].children[1].style.cssText += 'display: none !important;';
        } else {
            setTimeout(inftabLayoutLoop, 10);
        }
    })();

    // 背景和标签名称自动深色模式和图标外框
    // 图标阴影样式
    GM.addStyle('@media (prefers-color-scheme: dark) {.icon-img {box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.2) !important;}}');
    GM.addStyle('@media (prefers-color-scheme: light) {.icon-img {box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.2) !important;}}');
    // 图标标题颜色
    GM.addStyle('.icon-name {color: var(--mr-title) !important;}');
    // 背景色
    GM.addStyle('.home-main-content {background-color: var(--mr-bg) !important;}');
    GM.addStyle('body {background-color: var(--mr-bg) !important;}');
    // 文件夹打开后背景色
    GM.addStyle('.i-mask {background-color: var(--mr-bg) !important;}');
    // 文件夹更多图标颜色
    GM.addStyle('@media (prefers-color-scheme: dark) {.folder-more-icon {background-color: rgba(200, 200, 200, 1) !important;}}');
    GM.addStyle('@media (prefers-color-scheme: light) {.folder-more-icon {background-color: rgba(200, 200, 200, 1) !important;}}');
    // 颜色修复,针对DarkReader
    if (true) {
        (function inftabColorFixLoop() {
            if (document.getElementsByClassName('icon-img')[0]) {
                for (let i = 0; document.getElementsByClassName('icon-img').length > i; i++) {
                    if (document.getElementsByClassName('icon-img')[i]) {
                        document.getElementsByClassName('icon-img')[i].style.cssText += 'box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.2) !important;';
                        document.getElementsByClassName('icon-name')[i].style.cssText += 'color: var(--mr-title) !important;';
                    }
                }
                if (document.getElementsByClassName('home-main-content')[0]) {
                    document.getElementsByClassName('home-main-content')[0].style.cssText += 'background: var(--mr-bg) !important;';
                    document.body.style.cssText += 'background: var(--mr-bg) !important;';
                }
            }
            if (loopTimeout < 2000) {
                loopTimeout += 20;
                setTimeout(inftabColorFixLoop, 20);
            }
        })();
    }
})();