MediaWiki:Gadget-CopyAsChatAlphabet.js:修订间差异
跳转到导航
跳转到搜索
小无编辑摘要 |
小 (物灵移动页面User:物灵/vector.js至MediaWiki:Gadget-CopyAsChatAlphabet.js,不留重定向) |
(没有差异)
|
2023年2月9日 (四) 01:55的最新版本
var copyOption = false;
function makeButton() {
var 按钮 = document.createElement('li');
按钮.classList.add('mw-list-item');
var linkOpen = document.createElement('a');
var linkClose = document.createElement('a');
linkOpen.innerText = '复制聊天字母 ✗';
linkOpen.addEventListener("click", function() {
copyOption = true;
按钮.removeChild(linkOpen);
按钮.appendChild(linkClose);
return false;
});
linkClose.innerText = '复制聊天字母 ✓';
linkClose.addEventListener("click", function() {
copyOption = false;
按钮.removeChild(linkClose);
按钮.appendChild(linkOpen);
return false;
});
按钮.appendChild(linkClose);
return 按钮;
}
var letters = '!bpmwjqxynzDsrHN!bpmwjqxynzDsrHN!bpmwjqxynzDsrHNldtgkh45vF7Bcfualdtgkh45vF7Bcfualdtgkh45vF7BcfuaoeEAYL62T83V1i oeEAYL62T83V1i oeEAYL62T83V1i ';
function 聊天字母化(letter) {
var code = letter.charCodeAt(0) - 0xe020;
var caseSign = ['^', '', '~'][(code >>> 4) % 3];
return caseSign + letters[code];
}
document.getElementById('mw-content-text').addEventListener('copy', function(e) {
var data = e.clipboardData || window.clipboardData;
if (!data || !copyOption)
return;
var text = window.getSelection().toString();
if (text) {
data.setData('text/plain', text.replace(/[\ue020-\ue0af]/g, 聊天字母化));
e.preventDefault();
}
});
$(function() {
if (!document.querySelector('#p-views #ca-view.selected'))
return; // 仅阅读模式生效
copyOption = true;
var checkbox = document.querySelector('#p-variants ul');
if (checkbox) {
checkbox.appendChild(makeButton());
}
});