您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
BDWM_PLUS by motaguoke
// ==UserScript== // @name BDWM PLUS // @version 1.3 // @description BDWM_PLUS by motaguoke // @include http://bbs.pku.edu.cn/* // @include https://bbs.pku.edu.cn/* // @include https://*.bdwm.net/* // @include http://*.bdwm.net/* // @grant GM.getValue // @grant GM.setValue // @namespace https://gf.qytechs.cn/users/284856 // ==/UserScript== //设置 var GLOBAL_VERSION = "1.3" //全局变量 var GLOBAL_SEEME_STATUS = false //当前只看某一作者状态 var GLOBAL_SEEME_AUTHOR = "" //当前只看某一作者的作者ID console.log(`BDWM_PLUS by motaguoke Version: ${GLOBAL_VERSION}`) window.onload = BDWM_ADDON_MAIN() async function BDWM_ADDON_MAIN(){ //初始化插件 var observe = new MutationObserver(async function (mutations){ //初始化渲染插件 BDWM_ADDON_SEEME_RENDER() //只看作者插件 BDWM_ADDON_SETTINGINFO() //插件信息插件 bool_GODMODE = await GM.getValue("启用娱乐模式",false) if (bool_GODMODE == true){ //娱乐模式 BDWM_ADDON_GODMODE() } }) observe.observe(document.documentElement,{childList:true,subtree:true}) } document.addEventListener('click',async function(event){ //点击事件钩子 //console.log(event.target.className+" "+event.target.id) if (event.target.className == "only-seeme"){ // BDWM_ADDON_SEEME插件,只看某一作者 if (event.target.innerText == "只看TA"){ //进入只看作者状态 event.target.innerText = "取消只看TA" GLOBAL_SEEME_AUTHOR = event.target.id GLOBAL_SEEME_STATUS = true obj_onlyseeme = document.getElementsByClassName("only-seeme") for (i=0;i<obj_onlyseeme.length;i++){ obj_onlyseeme[i].innerText = "取消只看TA" } } else { //退出只看作者状态 event.target.innerText = "只看TA" GLOBAL_SEEME_AUTHOR = "" GLOBAL_SEEME_STATUS = false obj_onlyseeme = document.getElementsByClassName("only-seeme") for (i=0;i<obj_onlyseeme.length;i++){ obj_onlyseeme[i].innerText = "只看TA" } } BDWM_ADDON_SEEME_RENDER() //点击后立刻重新渲染 }else{ if (event.target.id == "settings_GODMODE"){ //娱乐模式选项 bool_GODMODE = await GM.getValue("启用娱乐模式",false) console.log(bool_GODMODE) console.log(!bool_GODMODE) await GM.setValue("启用娱乐模式",!bool_GODMODE) if (!bool_GODMODE == true){ BDWM_ADDON_GODMODE() //点击开始后立刻重新渲染 } } } },true); async function BDWM_ADDON_SEEME_RENDER(){ if (window.location.href.indexOf("post-read.php")<0){ //当切换到非读贴内容时,立刻重新刷新状态,避免上次查看主楼的延续 GLOBAL_SEEME_AUTHOR = "" GLOBAL_SEEME_STATUS = false } obj_found = document.getElementsByClassName("only-seeme") if (obj_found.length==0){ //本页面第一次加载时,给每个帖子加按钮 obj_functions = document.getElementsByClassName("functions") for (i = 0;i < obj_functions.length; i++){ obj_widebtn = obj_functions[i].getElementsByClassName("line wide-btn")[0] obj_newobj = document.createElement("a") obj_newobj.className = "only-seeme" if (GLOBAL_SEEME_STATUS == false){ obj_newobj.innerText = "只看TA"} else {obj_newobj.innerText = "取消只看TA"} if (obj_widebtn){ //存在关注按钮,在关注按钮旁边添加即可 str_username = obj_widebtn.getElementsByClassName("add-friend")[0].getAttribute("data-username") obj_newobj.id = str_username obj_widebtn.appendChild(obj_newobj) } else { //不存在关注按钮,需要首先获取的user-name,再新建一个widebtn类插入 //得到username str_username = obj_functions[i].parentNode.getElementsByClassName("username")[0].getElementsByTagName("a")[0].innerText obj_newobj.id = str_username //插入widebtn obj_widebtn = document.createElement("div") obj_widebtn.className = "line wide-btn" obj_functions[i].appendChild(obj_widebtn) //重新获得插入的widebtn DOM obj_functions[i].lastChild.appendChild(obj_newobj) } } } if (GLOBAL_SEEME_STATUS==true){ //只看作者状态 obj_postcard = document.getElementsByClassName("post-card") for (i = 0;i < obj_postcard.length; i++){ str_username = obj_postcard[i].getElementsByClassName("username")[0].getElementsByTagName("a")[0].innerText //关注后“关注”按钮将被隐藏 if (str_username!=GLOBAL_SEEME_AUTHOR){ obj_postcard[i].style.display = "none" }else{ obj_postcard[i].style.display = "block" } } }else{ //非只看作者状态 obj_postcard = document.getElementsByClassName("post-card") for (i = 0;i< obj_postcard.length; i++){ obj_postcard[i].style.display = "block" } } } async function BDWM_ADDON_SETTINGINFO(){ //增加插件信息 obj_footer = document.getElementById("footer") if (document.getElementById("footer").innerHTML.indexOf("BDWM_PLUS")<0) { obj_newobj = document.createElement("a") obj_newobj.style.color = "blue" obj_newobj.innerText = `BDWM_PLUS 版本 ${GLOBAL_VERSION} 作者 motaguoke 点击查看更新` obj_newobj.href = "https://gf.qytechs.cn/zh-CN/scripts/381264-bdwm-plus" obj_newobj.target = "_blank" obj_footer.appendChild(obj_newobj) obj_footer.appendChild(document.createElement("br")) obj_newobj = document.createElement("input") obj_newobj.type = "checkbox" obj_newobj.id = "settings_GODMODE" obj_newobj.checked = await GM.getValue("启用娱乐模式",false) obj_footer.appendChild(obj_newobj) obj_newobj = document.createElement("span") obj_newobj.innerText = "启用娱乐模式" obj_footer.appendChild(obj_newobj) obj_footer.appendChild(document.createElement("br")) obj_newobj = document.createElement("a") obj_newobj.style.color = "blue" obj_newobj.innerText = `查看该脚本的github页面` obj_newobj.href = "https://github.com/wangjunyi2008/BDWM_PLUS" obj_newobj.target = "_blank" obj_footer.appendChild(obj_newobj) } } async function BDWM_ADDON_GODMODE(){ //娱乐模式,让你变成大佬 str_username = document.getElementsByClassName("user-list-trigger")[0].nextSibling.nextSibling.innerText lst_postowner = document.getElementsByClassName("post-owner") for (i=0;i<lst_postowner.length;i++){ str_thisuser = lst_postowner[i].getElementsByClassName("username")[0].firstChild.innerText if (str_thisuser == str_username){ //回帖名称匹配 obj_port = lst_postowner[i].getElementsByClassName("portrait-container")[0] if (obj_port.getElementsByClassName("vip").length <= 0){ //如果没有被日过 //给头像加大V obj_new = document.createElement("img") obj_new.className = "vip" obj_new.src = "images/user/verified-border-0.png" obj_port.appendChild(obj_new) //修改昵称 lst_postowner[i].getElementsByClassName("nickname text-line-limit")[0].innerText = "本站站长" lst_postowner[i].getElementsByClassName("nickname text-line-limit")[0].style.color = "red" //修改等级和积分 lst_postowner[i].getElementsByClassName("score")[0].innerText = "10.0" lst_postowner[i].getElementsByClassName("level")[0].innerText = "唯我独尊" //修改帖子数和原创分 int_postnum = parseInt(lst_postowner[i].getElementsByClassName("label")[0].nextSibling.data) lst_postowner[i].getElementsByClassName("label")[0].nextSibling.data = String(int_postnum * 30) int_postnum = parseInt(lst_postowner[i].getElementsByClassName("label")[1].nextSibling.data) lst_postowner[i].getElementsByClassName("label")[1].nextSibling.data = String((int_postnum + 1)* 99) } } } }
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址