mcbbs_avatar

MCBBS头衔显示修复

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name           mcbbs_avatar
// @description    MCBBS头衔显示修复
// @author         浅念
// @version        1.1
// @include        http*://mcbbs.tvt.im/*
// @include        http*://mcbbs.net/*
// @grant          none
// @namespace https://greasyfork.org/zh-CN/scripts/29047-mcbbs-avatar
// ==/UserScript==

var html=document.getElementsByTagName("img");
for(var i=0;i<html.length;i++){
 if(html[i].src.indexOf("http://www.mcbbs.net/uc_server/avatar.php")>-1){
	 html[i].src=html[i].src.replace(/www.mcbbs.net/g, "mcbbs.tvt.im");
 }
}
var s = document.createElement("script");
s.innerHTML='\
function modifyResponse(response) {\
	var html=document.getElementsByTagName("img");\
	for(var i=0;i<html.length;i++){\
	 if(html[i].src.indexOf("http://www.mcbbs.net/uc_server/avatar.php")>-1){\
		 html[i].src=html[i].src.replace(/www.mcbbs.net/g, "mcbbs.tvt.im");\
	 }\
	}\
\
}\
\
function openBypass(original_function) {\
\
    return function(method, url, async) {\
        this.requestMethod = method;\
        this.requestURL = url;\
\
        this.addEventListener("readystatechange", modifyResponse);\
        return original_function.apply(this, arguments);\
    };\
\
}\
\
function sendBypass(original_function) {\
    return function(data) {\
        this.requestData = data;\
        return original_function.apply(this, arguments);\
    };\
}\
\
XMLHttpRequest.prototype.open = openBypass(XMLHttpRequest.prototype.open);\
XMLHttpRequest.prototype.send = sendBypass(XMLHttpRequest.prototype.send);\
';
s.onload = function() {
    this.remove();
};
(document.head || document.documentElement).appendChild(s);