MediaWiki:Gadget-JavascriptHeadings.js
Catatan: Selepas menyiarkan perubahan, anda mungkin perlu memintas cache pelayar untuk melihatnya.
- Firefox / Safari: Tahan Shift sambil mengklik Reload, atau tekan sama ada Ctrl-F5 atau Ctrl-R (⌘-R pada Mac)
- Google Chrome: Tekan Ctrl-Shift-R (⌘-Shift-R pada Mac)
- Internet Explorer / Edge: Tahan Ctrl sambil mengklik Refresh, atau tekan Ctrl-F5
- Opera: Tekan Ctrl-F5.
jQuery(document).ready(function () {
if (mediaWiki.config.get('wgAction') !== 'view')
return; // not just viewing the page
if (!/^(javascript|css)$/.test(mediaWiki.config.get('wgPageContentModel')))
return; // not on a JavaScript or CSS page
var bc = document.getElementById('bodyContent');
if (!bc)
return; // shouldn't happen
var pres = bc.getElementsByTagName('pre');
if (pres.length !== 1)
return; // shouldn't happen
var spans = pres[0].getElementsByTagName('span');
var numspans = spans.length;
for (var i = 0; i < numspans; ++i) {
if (spans[i].className !== 'coMULTI')
continue;
if (!spans[i].firstChild.nodeValue)
continue;
// TODO \n+ doesn't seem to work here, so using \s+ for now instead
var res = spans[i].firstChild.nodeValue.match(/\/\*\s*<\/pre>\s+(==+)(.*?)(==+)\s+<pre>\s*\*\//);
if (!res)
continue;
var l = res[1].length < res[3].length ? res[1].length : res[3].length;
var mwNode = document.createElement('span');
mwNode.className = 'mw-headline';
mwNode.appendChild(document.createTextNode(res[2]));
var hNode = document.createElement('h' + l);
hNode.appendChild(mwNode);
pres[0].replaceChild(hNode, spans[i]);
}
});