🏠 Home 

b站动态设置

调整b站动态首页得展示


Installer dette script?
// ==UserScript==
// @name         b站动态设置
// @namespace    https://greasyfork.org/
// @license      MIT
// @version      0.1
// @description  调整b站动态首页得展示
// @author       byhgz
// @match        *://t.bilibili.com/*
// @require      https://code.jquery.com/jquery-3.5.1.min.js
// @require      https://greasyfork.org/scripts/462234-message/code/Message.js?version=1170653
// @icon         https://static.hdslb.com/images/favicon.ico
// @grant        GM_registerMenuCommand
// @grant        GM_addStyle
// @grant        GM_setValue
// @grant        GM_getValue
// ==/UserScript==
const Util = {
addGMMenu(text, func, shortcutKey = null) {
return GM_registerMenuCommand(text, func, shortcutKey);
},
addStyle(cssStyleStr) {
GM_addStyle(cssStyleStr);
},
setData(key, content) {
GM_setValue(key, content);
},
getData(key, defaultValue) {
return GM_getValue(key, defaultValue);
},
}
const Layout={
addMenu(){
$("body").append(`<div style="position: fixed; left: 90%;top: 10%;z-index: 2024">
<button id="isShowMainPanel">只显示主内容</button>
</div>`);
}
}
const LocalData = {
isTrendsItemsTwoColumn() {
return Util.getData("trendsItemsTwoColumn", false);
},
setTrendsItemsTwoColumn(is) {
Util.setData("trendsItemsTwoColumn", is === true);
}
}
const Trends = {
setitemsCss() {
Util.addStyle(`
.bili-dyn-up-list__content{
display:flex;
flex-flow:row wrap;
}`);
},
setStyleRichTextarea() {
const i1 = setInterval(() => {
const richTextArea = document.querySelector(".bili-rich-textarea");
if (richTextArea === null) return;
clearInterval(i1);
try {
$(richTextArea).css("max-height", "");
Qmsg.success("已解锁发动态编辑框的最大可视内容!");
} catch (e) {
console.error("修改编辑框最大可视内容时出错!", e);
}
}, 1000);
},
topCssDisply: {
//针对于整体布局的细调整
body() {
const interval = setInterval(() => {
const leftTopUserE = document.querySelector(".left .bili-dyn-my-info");
if (leftTopUserE === null) return;
clearInterval(interval);
leftTopUserE.remove();
document.querySelector(".bili-dyn-home--member").style.justifyContent = 'space-between';
$('aside').hide();
document.querySelector("main").style.width = "100%";
});
const interval02 = setInterval(() => {
const e = document.querySelectorAll(".bili-dyn-sidebar>*:nth-child(-n+2)");
if (e.length === 0) return;
clearInterval(interval02);
e.forEach((value, key) => {
value.remove();
});
console.log("已尝试移除个别多余的悬浮按钮");
}, 500);
}
},
};
function extracted() {
const i2 = setInterval(() => {
const tempList = document.querySelectorAll(".bili-dyn-list__items>.bili-dyn-list__item");
if (tempList.length === 0) return;
clearInterval(i2);
//调整动态列表的布局方式为类似网格
Util.addStyle(`
.bili-dyn-list__items{
column-count: 2;
}
.bili-dyn-list__items>*{
page-break-inside: avoid;
}
`);
}, 500);
}
(function () {
'use strict';
const url = window.location.href;
const title = document.title;
Util.addGMMenu("动态首页动态展示双列显示开关", () => {
const b = confirm("是否开启动态首页动态展示双列显示?\n当前状态:" + (LocalData.isTrendsItemsTwoColumn() === true ? "开" : "关"));
LocalData.setTrendsItemsTwoColumn(b);
alert(`已设置状态:${b ? "开" : "关"}`);
});
if (!(url.startsWith("https://t.bilibili.com/") && title.startsWith("动态首页-哔哩哔哩"))) {
return;
}
console.log("=========动态首页=========");
const i1 = setInterval(() => {
const tab = document.querySelector(".bili-dyn-up-list__content");
if (tab === null) return;
clearInterval(i1);
Trends.setitemsCss();
Qmsg.success("已修改切换动态用护栏展示");
$(tab).children(".bili-dyn-up-list__item").click(() => {
extracted();
});
}, 1000);
Trends.setStyleRichTextarea();
Trends.topCssDisply.body();
if (LocalData.isTrendsItemsTwoColumn()) {
extracted();
}
Layout.addMenu();
$("#isShowMainPanel").click((e) => {
const target = e.target;
const aside = $('aside');
const bodyMain = document.querySelector("main");
if (target.textContent === "只显示主内容") {
target.textContent = "显示左右中内容";
aside.show();
bodyMain.style.width = "724px";
} else {
target.textContent = "只显示主内容";
aside.hide();
bodyMain.style.width = "100%";
}
});
})();