您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Replace all fonts by preferred ones.
// ==UserScript== // @name replace-fonts // @namespace http://tampermonkey.net/ // @version 202312190930 // @description Replace all fonts by preferred ones. // @author Rafael David Tinoco // @match http*://*/* // @run-at document-start // @grant none // ==/UserScript== ;(function () { 'use strict' var fontsToOpenSans = [ 'Calibri', 'Cambria', 'Candara', 'Constantia', 'Corbel', 'Georgia', 'Segoe UI', 'Trebuchet MS', 'Verdana', 'sans', 'sans-serif', 'serif', 'Avenir', 'Avenir Next', 'Comic Sans MS', 'Comic Sans', 'Lucida Grande', 'Lucida Sans', 'Roboto' ] var fontsToCousine = [ 'Monospace', 'Noto Mono', 'Consolas', 'Courier New', 'Courier', 'Monaco', 'Menlo', 'Fira Mono', 'Liberation Mono', 'Roboto Mono' ] var fontsToLiberationSans = [ 'Arial', 'Times New Roman', 'Arial Narrow', 'Tahoma', 'Helvetica', 'Helvetica Neue', 'San Francisco', 'Fira Sans', 'Noto Sans' ] function adjustElementStyles (node) { let fontFamily = window .getComputedStyle(node) .fontFamily.replace(/["']/g, '') let site = window.location.hostname fontFamily.split(',').some(font => { if (fontsToOpenSans.includes(font.trim())) { node.style.fontFamily = '"Open Sans", sans-serif' return true } else if (fontsToCousine.includes(font.trim())) { node.style.fontFamily = 'Cousine, monospace' return true } else if (fontsToLiberationSans.includes(font.trim())) { node.style.fontFamily = '"Liberation Sans", sans-serif' return true } return false }) } function observeDOMChanges () { const observer = new MutationObserver(mutations => { mutations.forEach(mutation => { mutation.addedNodes.forEach(node => { if (node.nodeType === Node.ELEMENT_NODE) { adjustElementStyles(node) node.querySelectorAll('*').forEach(adjustElementStyles) } }) }) }) observer.observe(document, { childList: true, subtree: true }) } window.addEventListener('load', () => { document.querySelectorAll('*').forEach(adjustElementStyles) observeDOMChanges() }) document.addEventListener('DOMContentLoaded', () => { document.querySelectorAll('*').forEach(adjustElementStyles) }) })()
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址