// ==UserScript==
// @name MCBBS Extend
// @namespace https://i.zapic.cc
// @version beta-0.0.1
// @description MCBBS行为拓展/样式修复
// @author Zapic
// @match https://www.mcbbs.net/*
// @downloadURL none
// ==/UserScript==
(function() {
var conf = {
//美化代码块样式
"fixCodeBlock": true,
//修复代码块"复制代码"换行消失的问题
"fixCodeCopy": true,
//修复表格排版内含有多媒体导致元素戳破表格的问题
"fixTableLayout": true,
//后台轮询新消息
"QueryMessage": true,
//后台轮询消息间隔,单位为秒
"QueryMessageInterval": 60,
//板块页点击"下一页"按钮是否记住当前页码
"rememberPage":true,
//美化右侧回到顶部按钮
"animateGoToTopButton":true,
//固定顶栏在顶部
"pinnedTopBar":true
};
var jq = jQuery;
if(conf.fixCodeBlock){
jq("body").append("");
}
if(conf.fixTableLayout){
jq("body").append("");
}
if(conf.fixCodeCopy){
copycode = function(obj) {
if (!obj)
return false;
var count = obj.children[0].children.length;
var code = "";
for(i=0;i#scrolltop{bottom: 270px;transform-origin: left;visibility:visible}");
showTopLink = function() {
var ft = $('ft');
if (ft) {
var scrolltop = $('scrolltop');
var viewPortHeight = parseInt(document.documentElement.clientHeight);
var scrollHeight = parseInt(document.body.getBoundingClientRect().top);
var basew = parseInt(ft.clientWidth);
var sw = scrolltop.clientWidth;
if(scrolltop.style.transitionDuration=="") scrolltop.style.transitionDuration=".2s";
if (basew < 1000) {
var left = parseInt(fetchOffset(ft)['left']);
left = left < sw ? left * 2 - sw : left;
scrolltop.style.left = (basew + left + 44) + 'px';
} else {
scrolltop.style.left = 'auto';
scrolltop.style.right = 0;
}
if (BROWSER.ie && BROWSER.ie < 7) {
scrolltop.style.top = viewPortHeight - scrollHeight - 150 + 'px';
}
if (scrollHeight < -100) {
scrolltop.style.opacity=1;
scrolltop.style.transform="scale(1)";
scrolltop.style.pointerEvents="none";
} else {
scrolltop.style.opacity=0;
scrolltop.style.transform="scale(0.7)";
scrolltop.style.pointerEvents="unset";
}
}
}
showTopLink();
}
if(conf.pinnedTopBar){
jq("body").append("");
}
})();