User:WhitePhosphorus/js/highlight.js
外观
注意:保存之后,你必须清除浏览器缓存才能看到做出的更改。Google Chrome、Firefox、Microsoft Edge及Safari:按住⇧ Shift键并单击工具栏的“刷新”按钮。参阅Help:绕过浏览器缓存以获取更多帮助。
(function(mw, $) {
'use strict';
if (mw.config.get('wgAction') !== "history") {
return;
}
let $highlight = $('<button />', {
'name': 'highlight',
'type': 'button',
'class': 'historysubmit mw-ui-button',
'title': '高亮显示选中的版本',
'text': '高亮所选版本'
});
$highlight.on('click', function(e) {
// Get all checked revision ids
let ids = [];
let idArr = null;
const idRe = /ids\[(\d+)\]/;
const highlightRe = /(&hilight=[^&]*)(&|$)/;
for (let b of $('input')) {
idArr = idRe.exec(b.name || '');
if (b.type === 'checkbox' && b.checked && idArr !== null) {
ids.push(idArr[1]);
}
}
// Highlight them!
let url = window.location.href;
if (url.includes('&hilight=')) {
// Drop previously highlighed revisions
url = url.replace(highlightRe, `&hilight=${ids.join(',')}$2`);
} else {
url += `&hilight=${ids.join(',')}`;
}
// Reload the page & got highlighted
window.location.href = url;
});
$(".historysubmit.mw-history-compareselectedversions-button").after($highlight);
})(mediaWiki, jQuery);