MediaWiki:Common.js:修订间差异
MediaWiki界面页面
更多操作
无编辑摘要 |
无编辑摘要 |
||
| 第26行: | 第26行: | ||
mw.loader.using('mediawiki.util').then(function() { | mw.loader.using('mediawiki.util').then(function() { | ||
document.addEventListener('DOMContentLoaded', function () { | document.addEventListener('DOMContentLoaded', function () { | ||
var el = document.getElementById('wiki-wordcount-number'); | |||
var el = document.getElementById(' | |||
if (!el) return; | if (!el) return; | ||
new mw.Api().get({ | new mw.Api().get({ | ||
action: 'query', | action: 'query', | ||
meta: 'siteinfo', | meta: 'siteinfo', | ||
siprop: 'statistics', | siprop: 'statistics', | ||
format: 'json' | |||
}).done(function (data) { | }).done(function (data) { | ||
var stats = | try { | ||
var stats = data.query.statistics; | |||
var total = stats['cirrussearch-article-words'] || 0; | |||
// 动画 | |||
var current = 0; | |||
var target = total; | |||
var steps = 120; | |||
var step = Math.ceil(target / steps); | |||
if (step < 1) step = 1; | |||
var interval = setInterval(function () { | |||
current += step; | |||
if (current >= target) { | |||
current = target; | |||
clearInterval(interval); | |||
} | |||
el.textContent = current.toLocaleString(); | |||
}, | }, 15); | ||
} catch (e) { | |||
console.error("字数统计解析错误", e); | |||
} | |||
}).fail(function () { | }).fail(function () { | ||
console.error( | console.error("字数统计 API 请求失败"); | ||
}); | }); | ||
}); | }); | ||
}); | }); | ||