MediaWiki:Common.js:修订间差异
MediaWiki界面页面
更多操作
无编辑摘要 |
无编辑摘要 |
||
| 第24行: | 第24行: | ||
`); | `); | ||
mw.loader.using('mediawiki.util').then(function() { | |||
document.addEventListener( | document.addEventListener('DOMContentLoaded', function () { | ||
// 找不到容器就不继续 | |||
var el = document.getElementById('cs-wordcount-number'); | |||
if (!el) return; | |||
// 调用 Siteinfo API 获取字数 | |||
new mw.Api().get({ | |||
action: 'query', | |||
meta: 'siteinfo', | |||
siprop: 'statistics', | |||
formatversion: 2 | |||
}).done(function (data) { | |||
var stats = data.query && data.query.statistics; | |||
var totalWords = stats ? stats['cirrussearch-article-words'] || 0 : 0; | |||
// 动画从 0 滚到真实数值 | |||
var current = 0; | |||
var target = totalWords; | |||
var step = Math.ceil(target / 100); // 100 步 | |||
if (step < 1) step = 1; | |||
var interval = setInterval(function () { | |||
current += step; | |||
if (current >= target) { | |||
current = target; | |||
clearInterval(interval); | |||
} | |||
el.textContent = current.toLocaleString(); | |||
}, 20); // 每帧 20ms | |||
}).fail(function () { | |||
console.error('获取字数 API 失败'); | |||
}); | |||
}); | }); | ||
}); | }); | ||