User:YFdyh000/Difflink.js
外观
注意:保存之后,你必须清除浏览器缓存才能看到做出的更改。Google Chrome、Firefox、Microsoft Edge及Safari:按住⇧ Shift键并单击工具栏的“刷新”按钮。参阅Help:绕过浏览器缓存以获取更多帮助。
//子菜单位于“更多”小三角中。
//<nowiki>[[User:AnYiLin/Difflink.js]]</nowiki>
(function() {
if (document.getElementById('p-cactions') && !mw.config.get('wgServerName').match(/wikimirror\.org$/)) {
var diff = mw.config.get('wgDiffNewId'), oldid = mw.config.get('wgDiffOldId') || mw.config.get('wgRevisionId'),
ins = function(tex, dec, ...value) {
var tid = new Date().getTime(); // for debugging
mw.util.addPortletLink('p-cactions', '#', tex, 't-difflink' + tid, dec);
document.getElementById('t-difflink' + tid).addEventListener('click', function() {
event.preventDefault();
var diffdiv = $("<div>")
value.forEach((v)=>diffdiv.append(new mw.widgets.CopyTextLayout({copyText: v}).$element));
OO.ui.alert(diffdiv, { size: 'large' });
})
};
if (diff) {
ins(wgUVS('当前差异链接', '當前差異連結'), wgUVS('复制链接到当前差异版本的维基语法', '複製連結到當前差異版本的維基語法'), 'Special:Diff/' + oldid + '/' + diff + '', '[[Special:Diff/' + oldid + '/' + diff + '|差异]]');
} else if (document.getElementById('mw-revision-nav')) {
ins(wgUVS('当前修订链接', '當前修訂連結'), wgUVS('复制链接到当前修订版本的维基语法', '複製連結到當前修訂版本的維基語法'), 'Special:PermanentLink/' + oldid + '', '[[Special:PermanentLink/' + oldid + '|版本]]');
} else {
return
}
} else {
return
}
})();