您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
用于美化豆瓣小组界面
当前为
// ==UserScript== // @name 豆瓣界面优化 // @namespace http://tampermonkey.net/ // @version 2.4 // @description 用于美化豆瓣小组界面 // @license BSD-3 // @author AnyDoor // @match https://www.douban.com/group/* // @icon https://img3.doubanio.com/dae/accounts/resources/3e96b44/shire/assets/nav_doubanapp_6.png // @grant GM_registerMenuCommand // @grant GM_unregisterMenuCommand // @grant GM_listValues // @grant GM_setValue // @grant GM_getValue // ==/UserScript== (function() { 'use strict'; // Your code here... //优化菜单 try{ var menu = document.querySelectorAll('div.more-items'); //消息栏样式 $("head").append( ` <style> .infomenu{ height: 100px; text-align: center; color: blue; } </style> ` ); //重写菜单 menu[0].innerHTML=` <div class="infomenu"> <!--<p class="infotext">脚本设置面板装修中……<br>敬请期待</p>--> <p class="infotext"><input type="checkbox" id="card-switch">置顶0回复帖子</p> <!--<p class="infotext"><input type="checkbox" id="card-switch">拉姐生日会宣传页(仅正组有效)</p>--> </div> <table cellpadding="0" cellspacing="0"> <tbody> <tr> <td><a href="https://www.douban.com/mine/">个人主页</a></td> <td> <a target="_blank" href="https://www.douban.com/mine/orders/">我的订单</a> </td> <td> <a target="_blank" href="https://www.douban.com/mine/wallet/">我的钱包</a> </td> <td> <a target="_blank" href="https://accounts.douban.com/passport/setting/">帐号管理</a> </td> <td> <a href="https://www.douban.com/accounts/logout?source=group&ck=Qp49">退出</a> </td> </tr> </tbody> </table> ` }catch(err){} //置顶0同接判断 let ZRTopping = GM_getValue('ZR_Topping', false);//获取零同接置顶配置信息 let cardSwitch = unsafeWindow.document.getElementById('card-switch'); cardSwitch.checked = ZRTopping;//获取零同接置顶配置信息 cardSwitch.addEventListener('click', () => { GM_setValue('ZR_Topping', cardSwitch.checked); }) //标签 $("head").append("<style>.DrawTag{font-size: 12px;display: inline-block;color: white;margin-right: 4px;background-color: #7c4df0;border: 1px solid rgba(0,0,0,0.1);padding: 1px 3px;border-radius: 2px;line-height: 18px;}</style>"); $("head").append("<style>.ZeroreplyTag{font-size: 12px;display: inline-block;color: white;margin-right: 4px;background-color: #3b9f75;border: 1px solid rgba(0,0,0,0.1);padding: 1px 3px;border-radius: 2px;line-height: 18px;}</style>"); $("head").append("<style>.PluginTag{font-size: 12px;display: inline-block;color: white;margin-right: 4px;background-color: #3b9f75;border: 1px solid rgba(0,0,0,0.1);padding: 1px 3px;border-radius: 2px;line-height: 18px;}</style>"); //获取帖子列表 var TableObject = document.querySelectorAll("table.olt tbody")[0]; //获取所有帖子目标 排除第一行的标题栏 var TitleObject = document.querySelectorAll('table.olt tbody tr:not(.th)'); //抽奖贴子关键词 可以自行添加 var KeyWordList = ["抽奖","抽个","抽一个","抽两个","抽三个"] //抽奖帖子黑名单 可以自行添加 var BlackList = ["插件"] //对每一个帖子进行巡逻 TitleObject.forEach(to =>{ var TitleInfo = to.children[0];//标题信息 可能包含置顶标签、精华标签和标题 var AuthorInfo = to.children[1];//作者信息 作者的昵称 var ReplyInfo = to.children[2];//回复信息 回复数量 无回复时为空 var TimeInfo = to.children[3];//时间信息 最后回复的时间 //对标题信息进行处理 var TitleInfo_Children = TitleInfo.children;//获取所有子元素 var TitleInfo_len = TitleInfo_Children.length;//获取子元素个数 var TitleInfo_text=TitleInfo_Children[TitleInfo_len-1].innerText;//获取标题文本 //console.log(TitleInfo_text); //抽奖标签判断机制 var DrawTag = document.createElement("span");//创建抽奖标签 DrawTag.className = 'DrawTag'; DrawTag.textContent = "抽奖"; KeyWordList.forEach(kwl =>{ //半段标题是否包含黑名单关键词 BlackList.forEach(bl =>{ if(TitleInfo_text.includes(kwl) && (!TitleInfo_text.includes(bl))){ TitleInfo.insertBefore(DrawTag,TitleInfo_Children[TitleInfo_len-1]); } }); }); //插件标签判断机制 待定 var PluginTag = document.createElement("span");//创建插件标签 //0同接判断机制 var ReplyInfo_num =ReplyInfo.innerText;//获取的时字符串 并非数值 if(ReplyInfo_num==''){ //构建回复标签 var ZeroreplyTag = document.createElement("span"); ZeroreplyTag.className = 'ZeroreplyTag'; ZeroreplyTag.textContent = "0回复"; //置顶0同接帖子 if(ZRTopping){ TitleInfo.insertBefore(ZeroreplyTag,TitleInfo_Children[TitleInfo_len-1]); var TOClone = to.cloneNode(true);//克隆0回复帖子 TableObject.insertBefore(TOClone,TableObject.children[6]);//将其插入至第六行前 to.remove()//移除被克隆的帖子 } } }); //首页去广告 try{ document.getElementById('dale_each_group_home_bottom_right').remove(); document.getElementById('dale_group_home_middle_right').remove(); document.getElementById('dale_group_topic_new_bottom_right').remove(); document.getElementById('dale_group_topic_new_inner_middle').remove(); document.getElementById('dale_group_topic_new_top_right').remove(); }catch(err) {} //拉姐宣传页 仅正组有效 if(0){ let cardSwitch = unsafeWindow.document.getElementById('card-switch'); let showCard = GM_getValue('show_card', true); var FloatTag = document.getElementsByClassName("mod side-nav")[0] FloatTag.innerHTML+="<div class='addiv'><a href='https://live.bilibili.com/22632424' title='点我飞到拉姐直播间∠🐮\n点击右上角我的账号即可关闭'><img class ='adimg' src='https://i0.hdslb.com/bfs/new_dyn/a3170d28a261154d2b4d899520519aa7672353429.jpg'></a><div>";//创建宣传图 var ADimg = document.getElementsByClassName("adimg")[0] var ADdiv = document.getElementsByClassName("addiv")[0] ADdiv.style.overflow="hidden"//显示约束 ADimg.style.width="100%"//宽度约束 ADimg.style.borderRadius="15px"//宽度约束 cardSwitch.checked = showCard;//获取宣传页状态 if(cardSwitch.checked){ADimg.style.display="block"}else{ADimg.style.display="none"} cardSwitch.addEventListener('click', () => { GM_setValue('show_card', cardSwitch.checked); if(cardSwitch.checked){ADimg.style.display="block"}else{ADimg.style.display="none"} }) } // let id=GM_registerMenuCommand ("测试(不要点击)", function(){ // //alert('菜单点击'); // //GM_unregisterMenuCommand(id);//删除菜单 // }, "h"); })();