// ==UserScript== // @name 妖火复读机 // @namespace http://yaohuo.me/ // @supportURL http://blog.zgcwkj.cn // @version 20240804.03 // @description 妖火论坛每个回复后面加个复读按钮。 // @author zgcwkj // @match *://yaohuo.me/bbs* // @match *://www.yaohuo.me/bbs* // @grant none // @license MIT // @downloadURL none // ==/UserScript== (function () { let domTextarea = document.querySelector('textarea'); //发表回复 window.reply = function (txt) { //填写内容 domTextarea.value = txt; //点击回复按钮 let domInput = document.querySelectorAll('input'); for (let iii = domInput.length - 1; iii > 0; iii--) { if (domInput[iii].value == '快速回复' || domInput[iii].value == '发表回复') { domInput[iii].click(); break; } } } //注入更多按钮 window.moreReplyBtn = function () { let moreButn = ['吃', '感谢分享', '触及知识盲区了', '卧槽', '神金,害我笑了']; let domForm = document.querySelector('.recontent'); if (domForm != null) { //注入按钮 let className = 'moreReplyButn'; let isAddBtn = domForm.querySelector(`.${className}`); if (isAddBtn == null) { let btnHtml = ''; let btnStyle = 'padding:5px;background:#3e933e;border-radius:5px;font-size:14px;color:#fff;'; moreButn.forEach(f => { btnHtml += ` ${f}`; }); domForm.innerHTML = `
${btnHtml}
` + domForm.innerHTML; } } } //注入复读按钮 window.repeatBotBtn = function () { //获取当前主题版本 let isNewLayout = false; let getNewLayout = localStorage.getItem('customLayoutEnabled'); if (getNewLayout !== null) isNewLayout = JSON.parse(getNewLayout); let domTxt = {}; if (isNewLayout) domTxt = document.querySelectorAll('.forum-post');//新主题 else domTxt = document.querySelectorAll('.list-reply'); //旧主题 //注入按钮 let className = 'repeatBotButn'; domTxt.forEach(f => { let domSpan = f.querySelector('.retext'); let isAddBtn = domSpan.querySelector(`.${className}`); if (isAddBtn == null) { let txt = domSpan.textContent; let btnHtml = ` +1`; domSpan.innerHTML += btnHtml; } }); } //检查页面 if (domTextarea != null) { //定时注入 let repeatTimeStart = true; setInterval(() => { if (repeatTimeStart) { //隐藏提示 var showTipe = document.querySelector('#retip'); if (showTipe != null) showTipe.style.display = 'none'; //注入更多按钮 window.moreReplyBtn(); //注入复读按钮 window.repeatBotBtn(); } }, 1000); //页面焦点事件(也许能减少性能损耗) document.addEventListener('visibilitychange', function () { repeatTimeStart = document.visibilityState != 'hidden'; }); } })();