站内所涉及的公司名称、商标、产品等均为其各自所有者所有的资产,站点内使用仅供用于识别。站点内使用的所有游戏图片、游戏文案等其他素材,其版权为游戏权利方所有。
如有异议请发邮件至:bwiki@bilibili.com,或联系客服QQ:1968897839。

如果希望显示隐藏日文注释,请前往 参数设置-小工具 取消勾选“隐藏日文注释”并保存,等待缓存刷新。
可以在 参数设置-小工具 中设置首页主题。

欢迎加入WIKI交流群,群号:945590010
欢迎加入QQ频道【突击莉莉】,点击加入

全站通知:

Widget:RefreshAllPages

来自突击莉莉终结之弹WIKI_BWIKI_哔哩哔哩
跳到导航 跳到搜索

<button id="RAPrefresh" style="padding:0.5em 1em">刷新所有页面</button> <textarea id="RAPresult" style="width:100%;height:300px"></textarea> <script> RAPMeta={ "result":[], "refreshed":0, } RAPFun={ "initialize":function(){ document.getElementById("RAPrefresh").onclick=function(){ if(document.getElementById("RAPresult").readOnly){ return } RAPMeta.result=[] RAPMeta.refreshed=0 RAPFun.refresh("") document.getElementById("RAPresult").readOnly=true document.getElementById("RAPresult").value="刷新中…" } }, "refresh":function(apfrom){ let url="https://wiki.biligame.com"+mw.config.values.wgScriptPath+"/api.php" let fd=new FormData() fd.append("action","purge") fd.append("generator","allpages") fd.append("gapfrom",apfrom) fd.append("gaplimit","500") fd.append("format","json") postFdApi(url,fd,function(json){ json=JSON.parse(json) let pages=json.purge for(let i=0;i<pages.length;i++){ RAPMeta.result.push(pages[i].title) getApi("https://wiki.biligame.com"+mw.config.values.wgScriptPath+"/"+encodeURIComponent(pages[i].title),function(){ RAPMeta.refreshed++ document.getElementById("RAPresult").value="刷新中……"+pages[i].title+"("+RAPMeta.refreshed+"/"+RAPMeta.result.length+")" if(RAPMeta.refreshed==RAPMeta.result.length){ document.getElementById("RAPresult").readOnly=false document.getElementById("RAPresult").value=RAPMeta.result.join("\n") alert("刷新完毕!") } }) } if(json.continue){ RAPFun.refresh(json.continue.gapcontinue) } }) }, } window.addEventListener("load",function(){ RAPFun.initialize() }) function getApi(url,callback=false,callbackE=false){ let ajax=new XMLHttpRequest() if(!callback){ ajax.open("GET",url,false) ajax.send() let json=JSON.parse(ajax.responseText) return json } ajax.open("GET",url) ajax.send() ajax.onreadystatechange=function(){ if(ajax.readyState==4){ if(ajax.status==200){ callback(ajax.responseText) } else if(ajax.status==404&&callbackE){ callbackE(true) } } } } function postFdApi(url,fd,callback=false,callbackE=false){ let ajax=new XMLHttpRequest() if(!callback){ ajax.open("POST",url,false) ajax.send(fd) let json=JSON.parse(ajax.responseText) return json } ajax.open("POST",url) ajax.send(fd) ajax.onreadystatechange=function(){ if(ajax.readyState==4){ if(ajax.status==200){ callback(ajax.responseText) } else if(ajax.status==404&&callbackE){ callbackE(true) } } } } </script> <style> textarea[readonly]{ color:lightgray; } </style>