MediaWiki:Gadget-sectionAnchors.js
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/**
* Vector HeadAnchors
* @source https://www.mediawiki.org/wiki/MediaWiki:Gadget-vector-headanchor.js
* @revision 2015-03-07
*
* @license http://krinkle.mit-license.org/
* @author Timo Tijhof, 2013–2015
*
* See also:
* https://www.mediawiki.org/wiki/Requests_for_comment/Clickable_section_anchors
* https://phabricator.wikimedia.org/T18691
*/
( function ( $, mw ) {
if ( mw.config.get('wgIsMainPage') ) {
// Don't run on the main page, where we use section headings extensively
return
}
$( '.mw-headline' ).each( function ( i, el ) {
var id = el.id,
$headline = $( el ),
$header = $headline.parent();
// If MediaWiki core's anchor is here, or if ours is here already, skip.
if ( !id || $header.find( '.mw-headline-anchor,.mw-headline-headanchor').length ) {
return;
}
$headline.removeAttr('id')
$header.addClass( 'mw-header' ).prepend(
$( '<a>' ).prop({
id: id,
href: '#' + id,
title: 'Link to this section',
className: 'mw-headline-headanchor'
})
);
} );
$( 'h2.mw-header, h2#filehistory, h2#filelinks, h2.diff-currentversion-title, .ns-special #mw-content-text h2' ).each( function ( i, el ) {
var $header = $( el );
$header.append(
$( '<div>' ).prop({
className: 'mw-headline-underline'
})
);
} );
}( jQuery, mediaWiki ) );