// ==UserScript== // @name 缩小标题字体,缩小图片 // @namespace http://tampermonkey.net/ // @version 0.5 // @description 摸鱼的艺术 // @author You // @match http://*/* // @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw== // @grant none // @license MIT // @downloadURL none // ==/UserScript== (function() { 'use strict'; const func=()=>{ setTimeout(()=>{ Array.from(document.getElementsByTagName('*')).forEach(ele=>{ if(!['HTML','HEAD','BODY'].includes(ele.tagName)){ const fontSizeStr = getComputedStyle(ele).fontSize; const fontSizeRes = fontSizeStr.match(/(\d+)(\w+)/); if(fontSizeRes){ const num = fontSizeRes .at(1); const unit = fontSizeRes .at(2); const isTooBig = unit==='rem' ? Number(num) > 1:Number(num) > 20 ele.style.fontSize = '16px'; } } if(ele.tagName==='IMG'){ const imgWidthStr = getComputedStyle(ele).width; const imgWidthRes = imgWidthStr.match(/(\d+)(\w+)/); if(imgWidthRes){ const num = imgWidthRes .at(1); const unit = imgWidthRes .at(2); const isTooBig = unit==='rem' ? Number(num) > 10:Number(num) > 150 if(isTooBig){ ele.style.width = '150px'; ele.style.height = 'auto'; } } } }) console.log('缩小字体完成'); },1000) } func(); window.addEventListener('hashchange',()=>{console.log('hash change'); func();}) //修改native以拦截popstate事件 var pushState = history.pushState; history.pushState = function() { var ret = pushState.apply(history, arguments); window.dispatchEvent(new Event("pushstate")); window.dispatchEvent(new Event("locationchangefathom")); return ret; } window.addEventListener("popstate", function() { window.dispatchEvent(new Event("locationchangefathom")) }); window.addEventListener("locationchangefathom", trackPageview) function trackPageview() { func(); } })();