Difference between revisions of "MediaWiki:Common.js"
Jump to navigation
Jump to search
m |
m |
||
| Line 1: | Line 1: | ||
/* Any JavaScript here will be loaded for all users on every page load. */ | /* Any JavaScript here will be loaded for all users on every page load. */ | ||
| + | /*! | ||
| + | * Vector HeadAnchors gadget, from <https://mediawiki.org/wiki/MediaWiki:Gadget-vector-headanchor.js> | ||
| + | * | ||
| + | * Copyright 2013-2020 Timo Tijhof | ||
| + | * @license MIT <https://opensource.org/licenses/MIT> | ||
| + | */ | ||
| + | // Revision as of 2021-01-29 | ||
| + | |||
| + | mw.hook( 'wikipage.content' ).add( function ( $content ) { | ||
| + | $content.find( 'span.mw-headline' ).each( function ( i, el ) { | ||
| + | var heading = el.parentNode; | ||
| + | if ( !el.id || heading.querySelector( '.tpl-vheadanchor') ) { | ||
| + | // No anchor possible, or anchor already inserted | ||
| + | return; | ||
| + | } | ||
| + | |||
| + | heading.classList.add('tpl-vheadanchor-heading'); | ||
| + | |||
| + | // Insert anchor. | ||
| + | anchor = document.createElement( 'a' ); | ||
| + | anchor.href = '#' + el.id; | ||
| + | anchor.textContent = '#'; | ||
| + | anchor.title = 'Link to this section'; | ||
| + | anchor.className = 'tpl-vheadanchor'; | ||
| + | heading.insertBefore( anchor, el.nextSibling ); | ||
| + | } ); | ||
| + | } ); | ||
Revision as of 15:41, 28 December 2021
/* Any JavaScript here will be loaded for all users on every page load. */
/*!
* Vector HeadAnchors gadget, from <https://mediawiki.org/wiki/MediaWiki:Gadget-vector-headanchor.js>
*
* Copyright 2013-2020 Timo Tijhof
* @license MIT <https://opensource.org/licenses/MIT>
*/
// Revision as of 2021-01-29
mw.hook( 'wikipage.content' ).add( function ( $content ) {
$content.find( 'span.mw-headline' ).each( function ( i, el ) {
var heading = el.parentNode;
if ( !el.id || heading.querySelector( '.tpl-vheadanchor') ) {
// No anchor possible, or anchor already inserted
return;
}
heading.classList.add('tpl-vheadanchor-heading');
// Insert anchor.
anchor = document.createElement( 'a' );
anchor.href = '#' + el.id;
anchor.textContent = '#';
anchor.title = 'Link to this section';
anchor.className = 'tpl-vheadanchor';
heading.insertBefore( anchor, el.nextSibling );
} );
} );