Удзельнік:Ssvb/Gadget-presenceLatinLetter.js
Заўвага: Пасля апублікавання, вам можа спатрэбіцца ачыстка кэшу браўзера, каб убачыць унесеныя змены.
- Firefox / Safari: націсніце Reload, утрымліваючы Shift, або націсніце Ctrl-F5 ці Ctrl-R (⌘-R на Макінтошах)
- Google Chrome: Націсніце Ctrl-Shift-R (⌘-Shift-R на Mac)
- Edge: націсніце Refresh, утрымліваючы Ctrl, або націсніце Ctrl-F5.
// https://uk.wikisource.org/w/index.php?title=MediaWiki:Gadget-presenceLatinLetter.js
$( document ).ready( function() {
if( ! [0, 4, 102, 250].includes( mw.config.get( 'wgNamespaceNumber' ) ) ||
! [ 'edit', 'submit', 'view' ].includes( mw.config.get( 'wgAction' ) ) ) {
return;
}
mw.loader.using(['mediawiki.util']).done(function () {
jQuery.fn.highlight = function() {
var reg = /[A-Za-zÁáÀàÄäÉéÈèÊêËëÍíÌìÎîÏïÓóÒòÔôÖöÚúÙùÛûÜüҢңҚқӘәҮү]/g;
var rep = '<span class="gadget-latin-letter">$&</span>';
this.each(function() {
$(this).contents().each(function() {
if(this.nodeType === 3 && this.parentElement.localName !== 'style' && reg.test(this.nodeValue)) {
$(this).replaceWith(this.nodeValue.replace(reg, rep));
}
else if(!$(this).hasClass('gadget-latin-letter') && this.type !== 'textarea') {
$(this).highlight();
}
});
});
};
var highlightLatinLetter = function () {
$('body').highlight();
};
highlightLatinLetter();
// Qpreview gadget compatibility
$('body').on('DOMSubtreeModified', '#wikiPreview', function(){
highlightLatinLetter();
});
});
});