您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
自动替你在网页中所有的中文字和半形的英文、数字、符号之间插入空白,让文字变得美观好看。(pangu, 盤古之白)
当前为
// ==UserScript== // @name 中英文之间加空白 // @name:zh-TW 中英文之間加空白 // @version 0.4.5 // @author CY Fung // @namespace UserScript // @license MIT // @require https://cdn.jsdelivr.net/gh/cyfung1031/pangu.js@21a92605b560f1484bd87ad89894e3b244830dca/dist/web/pangu.js // @match http://*/* // @match https://*/* // @exclude /^https?://\S+\.(txt|png|jpg|jpeg|gif|xml|svg|manifest|log|ini)[^\/]*$/ // @grant GM_setValue // @run-at document-start // @allFrames true // @inject-into content // @description 自动替你在网页中所有的中文字和半形的英文、数字、符号之间插入空白,让文字变得美观好看。(pangu, 盤古之白) // @description:zh-TW 自動替你在網頁中所有的中文字和半形的英文、數字、符號之間插入空白,讓文字變得美觀好看。(pangu, 盤古之白) // ==/UserScript== ((__CONTEXT__) => { const { Promise, requestAnimationFrame, pangu } = __CONTEXT__; class Mutex { constructor() { this.p = Promise.resolve() } lockWith(f) { this.p = this.p.then(() => new Promise(f).catch(console.warn)) } } let busy = false; const mutex = new Mutex(); function executor(f) { mutex.lockWith(unlock => { if (busy) { unlock(); return; } busy = true; Promise.resolve().then(() => { f(); }).then(() => { busy = false; }).then(unlock); }); } let mzk = null; document.addEventListener('DOMNodeInserted', function (e) { if (!busy) { if (mzk === null) mzk = e.target; else mzk = true; } }, { capture: false, passive: true }); function f77() { executor(() => { if (mzk) { let t = mzk; mzk = null; pangu.spacingPageTitle(); const node = t === true ? document.body : t; if ((node instanceof Node) && node.isConnected) { pangu.spacingNode(node); } } }); } async function onReady() { window.removeEventListener("DOMContentLoaded", onReady, false); executor(() => { pangu.spacingPageTitle(); pangu.spacingPageBody(); }); let bodyDOM = document.body; let m33 = 0; const config = { childList: true, subtree: true }; const callback = async (mutations) => { if (m33++ > 1e9) m33 = 9; let tid = m33; await new Promise(requestAnimationFrame); if (tid !== m33) return; f77(); await Promise.resolve(); let tmp = document.body; if (tmp != bodyDOM) { bodyDOM = tmp; observer.takeRecords(); observer.disconnect(); observer.observe(bodyDOM, config); callback(); } }; const observer = new MutationObserver(callback); observer.observe(bodyDOM, config); callback(); } Promise.resolve().then(() => { if (document.readyState !== 'loading') { onReady(); } else { window.addEventListener("DOMContentLoaded", onReady, false); } }); })({ Promise, requestAnimationFrame, pangu });
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址