MediaWiki:Gadget-CopyAsChatAlphabet.js:修订间差异

此后如竟没有炬火,我便是唯一的光。
跳转到导航 跳转到搜索
无编辑摘要
(物灵移动页面User:物灵/vector.jsMediaWiki:Gadget-CopyAsChatAlphabet.js,不留重定向)
 
(未显示同一用户的10个中间版本)
第1行: 第1行:
var 复制为聊天字母 = false;
var copyOption = false;


function 生成按钮() {
function makeButton() {
var 按钮 = document.createElement('li');
var 按钮 = document.createElement('li');
按钮.classList.add('mw-list-item');
按钮.classList.add('mw-list-item');
var 开链接 = document.createElement('a');
var linkOpen = document.createElement('a');
var 关链接 = document.createElement('a');
var linkClose = document.createElement('a');
开链接.innerText = '复制聊天字母 ✗';
linkOpen.innerText = '复制聊天字母 ✗';
开链接.addEventListener("click", () => {
linkOpen.addEventListener("click", function() {
复制为聊天字母 = true;
copyOption = true;
按钮.removeChild(开链接);
按钮.removeChild(linkOpen);
按钮.appendChild(关链接);
按钮.appendChild(linkClose);
return false;
});
});
关链接.innerText = '复制聊天字母 ✓';
linkClose.innerText = '复制聊天字母 ✓';
关链接.addEventListener("click", () => {
linkClose.addEventListener("click", function() {
复制为聊天字母 = false;
copyOption = false;
按钮.removeChild(关链接);
按钮.removeChild(linkClose);
按钮.appendChild(开链接);
按钮.appendChild(linkOpen);
return false;
});
});
按钮.appendChild(关链接);
按钮.appendChild(linkClose);
return 按钮;
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'))
if (!document.querySelector('#p-views #ca-view.selected'))
return; // 仅阅读模式生效
return; // 仅阅读模式生效
复制为聊天字母 = true;
copyOption = true;
var 变体表 = document.querySelector('#p-variants-label ul');
var checkbox = document.querySelector('#p-variants ul');
if (变体表) {
if (checkbox) {
变体表.appendChild(生成按钮());
checkbox.appendChild(makeButton());
}
}
});
});

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());
    }
});