妖火复读机

妖火论坛每个回复后面加个复读按钮。

目前为 2024-08-04 提交的版本。查看 最新版本

// ==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
// ==/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 += ` <a href='javascript:;' class='${className}' style='${btnStyle}' onclick='window.reply("${f}")'>${f}</a>`;
        });
        domForm.innerHTML = `<div style='margin:0 10px 7px;'>${btnHtml}</div>` + 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 = ` <a href='javascript:;' class='${className}' onclick='window.reply("${txt}")'>+1</a>`;
        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';
    });
  }
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址