// ==UserScript== // @name 编程猫防屏蔽防吃格式助手 // @namespace https://shequ.codemao.cn/user/201649362 // @version 0.1 // @description 编程猫发帖防屏蔽防吃格式 // @author SMYLuke // @match https://shequ.codemao.cn/community // @icon https://cdn-community.codemao.cn/47/community/d2ViXzUwMDFfNjI5MDU1XzIyOF8xNjI2NDMyNDQwMDE0XzRlYWZmNzBk.png // @grant GM_xmlhttpRequest // @grant GM_log // @grant GM_getValue // @grant GM_setValue // @connect static.box3.codemao.cn // @require https://cdn.jsdelivr.net/npm/lil-gui@0.16 // @license MIT // @downloadURL none // ==/UserScript== async function waitElement(selector) { 'use strict'; let el; while (!el) { el = document.querySelector(selector); await new Promise(requestAnimationFrame); } return el; } (async () => { 'use strict'; let link = document.createElement("link"); link.rel = "stylesheet"; link.type = "text/css"; link.href = "https://unpkg.com/mdui@1.0.2/dist/css/mdui.min.css"; document.head.appendChild(link); var doNotShield = { run: async () => { const text = (await waitElement("#react-tinymce-0_ifr")).contentDocument.body.innerHTML; const data = ` ${encodeURI(text)} `; GM_xmlhttpRequest({ method: "post", url: "https://static.box3.codemao.cn/block", data: data, binary: true, async onload({ response }) { (await waitElement("#react-tinymce-0_ifr")).contentDocument.body.innerHTML = ``; }, }); } }; (await waitElement("#root > div > div.r-index--main_cont > div > div.r-community--right_search_container > div > div.r-community--search_header > a.r-community--send_btn")).addEventListener("click", () => { window.gui = new lil.GUI({title: "编程猫防屏蔽助手"}); window.gui.domElement.style.top = "unset"; window.gui.domElement.style.bottom = "0"; window.gui.domElement.style.userSelect = "none"; window.gui.add(doNotShield, "run").name("使用防屏蔽功能") }); (await waitElement("#root > div > div.r-index--main_cont > div > div:nth-child(4) > div > div.c-model_box--content_wrap > div > a")).addEventListener("click", () => { window.gui.destroy() }) })();