User:方洪渐/monobook.js
维基百科,自由的百科全书
注意:在保存以后,您必须清除浏览器的缓存才能看到所作出的改变:
- Mozilla: 点击刷新(或ctrl-r), IE / Opera: ctrl-f5, Safari: cmd-r, Konqueror ctrl-r。
//<div><pre><nowiki> function updatehook() { updatelinks(0); } function updatelinks(count) { for(i=0;i+count<document.links.length;++i) { with(document.links[i+count]) { var url=getupdatedurl(href,location); if(url=="")continue; if(innerHTML==href) innerHTML=url; href=url; } if(i>=100) { setTimeout("updatelinks("+(i+count)+")",1000); return; } } } function getupdatedurl(href,loc) { var domain=getpath1(loc); var host=getpath2(loc); var h=new String(href); if(h==hrefstart(h)) { var url; var server=getserver(href); if(server=="upload.wikimedia.org")return ""; if(server=="mail.wikipedia.org")return ""; if(server=="secure.wikimedia.org") { if(getpath1(h)!=domain || getpath2(h)!=host) url="https://secure.wikimedia.org/"+domain+"/"+host+"/"+getpath(h); else return "/"+getpath(h); } else url=update(h); return url; } else return "/"+domain+"/"+host+h; } function hrefstart(url) { var ret=new String(url); var start=/^(\/)(.*)/; return ret.replace(start,"$2"); } function getpath1(url) { var ret=new String(url); var path1=/^([A-Za-z0-9_]+):\/\/([^\/]*)\/([^\/]*)\/(.*)/; var tmp=new String(url); ret=ret.replace(path1,"$3"); if(ret==tmp) { return ret.replace(/^([A-Za-z0-9_]+):\/\/([^\/]*)\/(.*)/,"$3"); } return ret; } function getpath2(url) { var ret=new String(url); var path2=/^([A-Za-z0-9_]+):\/\/([^\/]*)\/([^\/]*)\/([^\/]*)\/(.*)/; var tmp=new String(url); ret=ret.replace(path2,"$4"); if(ret==tmp){ return ret.replace(/^([A-Za-z0-9_]+):\/\/([^\/]*)\/([^\/]*)\/(.*)/,"$4"); }; return ret; } function getpath(url) { var ret=new String(url); var path3=/^([A-Za-z0-9_]+):\/\/([^\/]*)\/(.*)/; return ret.replace(path3,"$3"); } function update(url) { var ret=new String(url); var ud=/^http:\/\/([^\.\/]*).(wikimedia|wikipedia|wiktionary|wikibooks|wikiquote|wikisource|wikinews).org\/(.*)/; return ret.replace(ud,"https://secure.wikimedia.org/$2/$1/$3"); } function getserver(url) { var ret=new String(url); var server=/^([A-Za-z0-9_]+):\/\/([^\/]*)\/(.*)/; return ret.replace(server,"$2"); } if(getserver(location)=="secure.wikimedia.org") { addLoadEvent(updatehook); }//</nowiki></pre></div>