哔哩哔哩(bilibili.com)分区隐藏

用于隐藏B站首页上不想看到的分区板块

// ==UserScript==
// @name         哔哩哔哩(bilibili.com)分区隐藏
// @version      0.5
// @description  用于隐藏B站首页上不想看到的分区板块
// @author       loonos
// @match        https://www.bilibili.com/
// @require      https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js
// @namespace    https://greasyfork.org/users/33079
// ==/UserScript==
var $ = $ || window.$;

$(window).load(function() {

    // 隐藏此列表中的模块
    var hide_list = [];
    hide_module(hide_list);

});

// 处理差异名称
function unify_name(name) {
    if (name == "正在直播") {
        return "直播";
    }
    if (name == "电视剧") {
        return "TV剧";
    }
    return name;
}

// 获取所有模块列表
function get_module() {
    var result = {};
    var all_module = $(".proxy-box > div");
    var report_module = $(".first-screen > div");
    for (var i = 0; i < all_module.length; i++) {
        var m_id = all_module[i].id ? all_module[i].id : "";
        var m_name = all_module[i].getElementsByClassName("name").length > 0 ? all_module[i].getElementsByClassName("name")[0].innerHTML : "";
        if (m_id !== "" && m_name !== "") { result[unify_name(m_name)] = m_id; }
    }
    for (var j = 0; j < report_module.length; j++) {
        var r_id = report_module[j].id ? report_module[j].id : "";
        var r_name = report_module[j].getElementsByClassName("name").length > 0 ? report_module[j].getElementsByClassName("name")[0].innerHTML : "";
        if (r_id !== "" && r_name !== "") { result[unify_name(r_name)] = r_id; }
    }
    return result;
}

// 隐藏列表中的模块
function hide_module(hide_list) {
    var module_list = get_module();
    for (var i = 0; i < hide_list.length; i++) {
        var m_name = unify_name(hide_list[i]);
        if (module_list[m_name]) {

            // 右侧的导航模块
            var module_nav = $("div.sortable:contains('" + m_name + "')");
            module_nav.css("display", "none");

            // 首页的分区板块
            var module_zone = $("#" + module_list[m_name]);
            module_zone.css("display", "none");
        } else {
            console.log("哔哩哔哩(bilibili.com)分区隐藏:分区【" + m_name + "】不存在!");
        }
    }
}