Greasy Fork

来自缓存

Greasy Fork is available in English.

豆瓣界面优化

用于美化豆瓣小组界面

当前为 2022-07-14 提交的版本,查看 最新版本

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         豆瓣界面优化
// @namespace    http://tampermonkey.net/
// @version      1.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
// ==/UserScript==

(function() {
    'use strict';
    // Your code here...
    //抽奖标签样式 背景色为紫色 #7c4df0
    $("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>")
    const TitleObject = document.querySelectorAll("td[class='title']");
    const ReplyObject = document.querySelectorAll("td[class='r-count ']");
    //抽奖贴子关键词 可以自行添加
    var KeyWordList = ["抽奖","抽个","抽一个","抽两个","抽三个"]
    //抽奖帖子黑名单 可以自行添加
    var BlackList = ["插件"]
    var cnt = 0;
    //巡逻每一个标题
    TitleObject.forEach(to =>{
        var TitleLen = to.children.length;
        //过滤已经设置为精华的帖子 设置为精华置顶时元素长度为3
        if(TitleLen <=2 ){
            //读取该标题的文本
            var TitleStr = to.children[0].title
            //构建抽奖标签
            var DrawTag = document.createElement("span");
            DrawTag.className = 'DrawTag';
            DrawTag.textContent = "抽奖";
            //判断标题是否包含抽奖关键词
            KeyWordList.forEach(kwl =>{
                //半段标题是否包含黑名单关键词
                BlackList.forEach(bl =>{
                    if(TitleStr.includes(kwl) && (!TitleStr.includes(bl))){
                        //在标题前插入抽奖标签
                        to.insertBefore(DrawTag,to.children[0]);
                    }
                })
            });
        }
    });
    ReplyObject.forEach(ro =>{
        console.log(ro);
        //判断回复是否为0
        if(ro.textContent==''){
            //构建回复标签
            var ZeroreplyTag = document.createElement("span");
            ZeroreplyTag.className = 'ZeroreplyTag';
            ZeroreplyTag.textContent = "0回复";
            //在标题前插入回复标签
            TitleObject[cnt].insertBefore(ZeroreplyTag,TitleObject[cnt].children[0]);
        }
        cnt++;
    });
    //首页去广告
    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) {}
    //优化菜单
    try{
        var menu = document.querySelectorAll('div.more-items');
        console.log(menu)
        //重写菜单
        menu[0].innerHTML="<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&amp;ck=Qp49\">退出</a></td></tr></tbody></table>"
        //构建消息栏
        var infobar = document.createElement('div');
    }catch(err){}
    // let id=GM_registerMenuCommand ("测试(不要点击)", function(){
    //     //alert('菜单点击');
    //     //GM_unregisterMenuCommand(id);//删除菜单
    // }, "h");
})();