![刷新 刷新](/images/thumb/b/b0/OOjs_UI_icon_reload-progressive.svg/55px-OOjs_UI_icon_reload-progressive.svg.png)
请注意:更新本页面后,您可能需要清除浏览器缓存才能看到所作变更的影响。
Google Chrome、Microsoft Edge、Mozilla Firefox、Safari:按住⇧ Shift,同时单击“刷新”。
Google Chrome、Microsoft Edge、Mozilla Firefox、Safari:按住⇧ Shift,同时单击“刷新”。
![Cc.logo.circle.svg](/images/thumb/5/5d/CC_Logo.svg/40px-CC_Logo.svg.png)
![署名 署名](/images/thumb/1/11/Cc-by_new_white.svg/24px-Cc-by_new_white.svg.png)
![相同方式共享 相同方式共享](/images/thumb/d/df/Cc-sa_white.svg/24px-Cc-sa_white.svg.png)
本文件采用知识共享署名-相同方式共享 4.0 国际(CC BY-SA 4.0)许可协议授权。
- 您可以自由地:
- 分享 – 在任何媒介以任何形式复制、发行本作品
- 演绎 – 修改、转换或以本作品为基础进行创作
- 惟须遵守下列条件:
- 署名 – 您必须给出适当的署名(标明原作者),提供指向本许可协议的链接,同时标明是否(对原始作品)作了修改。您可以用任何合理的方式来署名,但是不得以任何方式暗示许可人为您或您的使用背书(即诱导原作者在不了解协议情况下给你授权)。
- 相同方式共享 – 如果您再混合、转换或者基于本作品进行创作,您必须基于与原先许可协议相同或相兼容的许可协议分发您贡献的作品。
'use strict';
/* <nowiki> */
/**
* SPDX-License-Identifier: CC-BY-SA-4.0
* _addText: '{{Gadget Header|license=CC-BY-SA-4.0}}'
*
* @source <zh.wikipedia.org/wiki/MediaWiki:Gadget-Wordcount.js>
*/
(function ($, mw) {
var bytecount = function (text) {
// eslint-disable-next-line no-control-regex
text = text.replace(/[\u0000-\u007F]/g, '.');
text = text.replace(/[\u0080-\u07FF\uD800-\uDFFF]/g, '..');
text = text.replace(/[\u0800-\uD7FF\uE000-\uFFFF]/g, '...');
return text.length;
};
var cjkcount = function (text) {
text = text.replace(/\./g, '');
text = text.replace(/[\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u3005\u3007\u3021-\u3029\u3038-\u303B\u3400-\u4DB5\u4E00-\u9FCC\uF900-\uFA6D\uFA70-\uFAD9]|[\uD840-\uD868][\uDC00-\uDFFF]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|[\uD86A-\uD86C][\uDC00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D]|\uD87E[\uDC00-\uDE1D]/g, '.');
text = text.replace(/[^.]/g, '');
return text.length;
};
var getwcbytext = function (text) { return "".concat(text.length, " 字符 (").concat(cjkcount(text), " CJK汉字)<br>").concat(bytecount(text), " 字节 在 <a href=\"").concat(mw.config.get('wgScript'), "?title=UTF-8\">UTF-8</a> 编码中"); };
var getsel = function () { return window.getSelection().toString(); };
var dowc = function () {
$('.wordcount').remove();
var text = getsel();
if (text.length === 0) {
return;
}
var divj = $('<div>')
.html(getwcbytext(text))
.css({
position: 'fixed',
right: '0',
bottom: '0',
margin: '4px',
padding: '6px'
})
.addClass('wordcount ui-state-highlight ui-corner-all')
.appendTo('body');
window.setTimeout(function () {
divj.fadeOut('slow');
}, 5000);
};
if (mw.config.get('wgAction') === 'view') {
if ('ontouchstart' in document) {
$(document).on('touchstart touchend', dowc);
}
else {
$(document).on('mouseup', dowc).on('keyup', dowc);
}
}
})(jQuery, mediaWiki);