MediaWiki:Gadget-Purgecache.js:修订间差异
跳到导航
跳到搜索
imported>=海豚= (创建页面,内容为“// <pre> $(function(){ mw.loader.using("moment").then(function() { var li = $('<li/>').appendTo("#p-personal > ul"), textNode = $('<span/>'),…”) |
imported>=海豚= 无编辑摘要 |
||
(未显示同一用户的1个中间版本) | |||
第14行: | 第14行: | ||
} else { | } else { | ||
containerNode = $('<a/>'); | containerNode = $('<a/>'); | ||
var statusNode = $('<span/>').text(' | var statusNode = $('<span/>').text(' 清除 页面 缓存'), | ||
runningStatus = false; | runningStatus = false; | ||
containerNode.attr("href", 'javascript:void(0);'); | containerNode.attr("href", 'javascript:void(0);'); | ||
第20行: | 第20行: | ||
containerNode.on('click', function() { | containerNode.on('click', function() { | ||
if (runningStatus) return; | if (runningStatus) return; | ||
statusNode.text('正在 | statusNode.text('正在 清除 页面 缓存 ……'); | ||
statusNode.prepend('<img src="https://static.mengniang.org/common/d/d1/Windows_10_loading.gif" style="height: 1em; margin-top: -.25em;">'); | statusNode.prepend('<img src="https://static.mengniang.org/common/d/d1/Windows_10_loading.gif" style="height: 1em; margin-top: -.25em;">'); | ||
runningStatus = true; | runningStatus = true; | ||
第33行: | 第33行: | ||
setTimeout(function() { | setTimeout(function() { | ||
api.post(opt).then(function() { | api.post(opt).then(function() { | ||
statusNode.text(' | statusNode.text(' 清除 页面 缓存 成功!'); | ||
setTimeout(location.reload.bind(location), 1000); | setTimeout(location.reload.bind(location), 1000); | ||
}, function() { | }, function() { | ||
statusNode.text(' | statusNode.text(' 清除 页面 缓存 失败,点击可重试!'); | ||
runningStatus = false; | runningStatus = false; | ||
setTimeout(function() { | setTimeout(function() { | ||
if (!runningStatus) statusNode.text(' | if (!runningStatus) statusNode.text(' 清除 页面 缓存'); | ||
}, 5000); | }, 5000); | ||
}); | }); | ||
}, 370); | }, 370); | ||
}, function() { | }, function() { | ||
statusNode.text(' | statusNode.text(' 清除 页面 缓存 失败,点击可重试!'); | ||
runningStatus = false; | runningStatus = false; | ||
setTimeout(function() { | setTimeout(function() { | ||
if (!runningStatus) statusNode.text(' | if (!runningStatus) statusNode.text(' 清除 页面 缓存'); | ||
}, 5000); | }, 5000); | ||
}); | }); | ||
第65行: | 第65行: | ||
}, date.getTime() - now); | }, date.getTime() - now); | ||
}); | }); | ||
new Image().src = "https://static.mengniang.org/common/d/d1/Windows_10_loading.gif"; | |||
}); | }); | ||
// </pre> | // </pre> |
2020年5月31日 (日) 19:43的版本
// <pre>
$(function(){
mw.loader.using("moment").then(function() {
var li = $('<li/>').appendTo("#p-personal > ul"),
textNode = $('<span/>'),
containerNode;
if (mw.config.get('wgNamespaceNumber') === -1) {
containerNode = $('<span/>');
containerNode.css({
'cursor': 'default',
'user-select': 'none'
});
containerNode.append('特殊页面(').append(textNode).append(')');
} else {
containerNode = $('<a/>');
var statusNode = $('<span/>').text('清除页面缓存'),
runningStatus = false;
containerNode.attr("href", 'javascript:void(0);');
containerNode.append(statusNode).append('(').append(textNode).append(')');
containerNode.on('click', function() {
if (runningStatus) return;
statusNode.text('正在清除页面缓存……');
statusNode.prepend('<img src="https://static.mengniang.org/common/d/d1/Windows_10_loading.gif" style="height: 1em; margin-top: -.25em;">');
runningStatus = true;
var api = new mw.Api(),
opt = {
action: 'purge',
format: 'json',
forcelinkupdate: true,
titles: mw.config.get('wgPageName')
};
api.post(opt).then(function() {
setTimeout(function() {
api.post(opt).then(function() {
statusNode.text('清除页面缓存成功!');
setTimeout(location.reload.bind(location), 1000);
}, function() {
statusNode.text('清除页面缓存失败,点击可重试!');
runningStatus = false;
setTimeout(function() {
if (!runningStatus) statusNode.text('清除页面缓存');
}, 5000);
});
}, 370);
}, function() {
statusNode.text('清除页面缓存失败,点击可重试!');
runningStatus = false;
setTimeout(function() {
if (!runningStatus) statusNode.text('清除页面缓存');
}, 5000);
});
});
}
li.append(containerNode);
textNode.text(moment().format('A h[:]mm[:]ss'));
var date = new Date();
var now = date.getTime();
date.setMilliseconds(0);
date.setSeconds(date.getSeconds() + 1);
setTimeout(function() {
setInterval(function() {
textNode.text(moment().format('A h[:]mm[:]ss'));
}, 1e3);
textNode.text(moment().format('A h[:]mm[:]ss'));
}, date.getTime() - now);
});
new Image().src = "https://static.mengniang.org/common/d/d1/Windows_10_loading.gif";
});
// </pre>