Greasy Fork is available in English.
自定义mcbbs的背景
当前为
// ==UserScript==
// @name MCBBS 自定义背景
// @namespace http://fang.blog.miri.site/
// @version 2.0
// @icon https://s2.ax1x.com/2020/02/25/3twNzq.png
// @description 自定义mcbbs的背景
// @author Mr_Fang
// @match https://*.mcbbs.net/*
// @grant none
// ==/UserScript==
(function() {
// 定义变量
var storage = window.localStorage;
var mbg_url = storage.getItem('mbg_url');
var mbg_opacity = storage.getItem('mbg_opacity');
var mbg_border_top = storage.getItem('mbg_border_top');
var version = "2.0";
var date = new Date();
console.log(" %c MCBBS 自定义背景 %c V"+ version +" ", "color: #fff; background: #f8981d; padding:5px;", "color:#fff; background: #000; padding:5px;");
console.log(" %c Made by %c 快乐小方 ", "color: #fff; background: #815098; padding:5px;", "color:#fff; background: #000; padding:5px;");
//
// 0.4.1 在0.4基础上降低了泥潭吉祥物泥猪的层级,既不会被广告遮挡又不会挡住其它内容了
// 0.4.2 自定义的背景现在会居中显示了
// 2.0 去掉了夜间模式、添加了背景随机机制、可以自定义泥潭的挂件了
//
// 在个人信息菜单中添加按钮
jq('.user_info_menu_btn').append('<li><a id="bg_setting">自定义背景</a></li>');
// 设置窗口
document.getElementById('bg_setting').addEventListener('click',function(){
showDialog('<style>.alert_right {background-image: none;padding-right: 0px;padding-left: 0px;}</style><div class=""><b>点击确定保存 刷新后生效</b><hr><p>自定义背景图 <font color="gray">- 请填写图片链接(多行即启用随机显示)</font></p><textarea id="mbg_url_input" style="width: 98%;" rows="5">' + storage.getItem('mbg_url') + '</textarea><p>透明度 <font color="gray">- 当前' + storage.getItem('mbg_opacity') + '%</font></p><input min="0" max="100" type="range" value="' + storage.getItem('mbg_opacity') + '" id="mbg_opacity_input" style="width: 98%;"><font>0%</font><font style="float: right;">100%</font><p>自定义挂件 <font color="gray">- 请填写图片链接(留空或null即不显示)</font></p><input id="mbg_border_top_input" value="'+ storage.getItem('mbg_border_top') +'" style="width: 98%;" ></div>',
'right',
'<div style="line-height:30px;"><img src="https://s2.ax1x.com/2020/02/25/3twNzq.png" width="20px"> 自定义背景</div>',
function() {
storage["mbg_url"] = document.getElementById("mbg_url_input").value;
storage["mbg_opacity"] = document.getElementById("mbg_opacity_input").value;
storage["mbg_border_top"] = document.getElementById("mbg_border_top_input").value;
}
);
})
mbg_url = "['" + storage.getItem('mbg_url') + "']";
var n = mbg_url.split('\n').length - 1;
for(var l=0;l<n;l++){
mbg_url = mbg_url.replace('\n',"','");
//console.log(mbg_url);
}
var mbg_urlList = eval("(" + mbg_url + ")");
console.log(mbg_urlList);
var hsv = mbg_urlList.length; // 获取数组长度
var ran = Math.floor(Math.random()*hsv); // 取0至数组最大下标值中的随机数(因为floor是向下取整)
// 判断是背景否为空
if(mbg_urlList == null){
mbg_urlList = ['https://www.mcbbs.net/template/mcbbs/image/body_bg.jpg'];
}
// 判断透明度是否为空
if(mbg_opacity == null){
mbg_opacity = 100;
}
// 判断挂件是否为空
if(mbg_border_top != null){
// 这个挂件是论坛自带的,但是被注释掉了
// 泥潭吉祥物泥猪的路径地址:template/mcbbs/image/muddy_pig_subhero_updated6-19.png
jq('<img class="mc_top" src="' + mbg_border_top + '" draggable="false"/>').insertBefore(".mc_map_border_top");
}
// 在head里添加css
jq("head").append('<style id="mbg_css">img.mc_top{z-index:99;} #body_fixed_bg {background-image: url(' + mbg_urlList[ran] + '); background-position: center;} div.mc_map_wp {opacity: ' + mbg_opacity/100 + ';}</style>');
})();