跳转到内容

User:YFdyh000/Difflink.js

维基百科,自由的百科全书

注意:保存之后,你必须清除浏览器缓存才能看到做出的更改。Google ChromeFirefoxMicrosoft EdgeSafari:按住⇧ 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
	}
})();