MediaWiki

Common.js: Difference between revisions

From Grouse House Wiki

No edit summary
Tag: Manual revert
No edit summary
Line 3: Line 3:
mw.loader.load( 'https://cdn.rawgit.com/prtksxna/persistent-toc/master/ptoc.css', 'text/css' );
mw.loader.load( 'https://cdn.rawgit.com/prtksxna/persistent-toc/master/ptoc.css', 'text/css' );
mw.loader.load( 'https://cdn.rawgit.com/prtksxna/persistent-toc/master/ptoc.js', 'text/javascript' );
mw.loader.load( 'https://cdn.rawgit.com/prtksxna/persistent-toc/master/ptoc.js', 'text/javascript' );
( function () {
'use strict';
var dynamicImages = document.getElementsByClassName( 'dynamic-images'),
i, imageSet , j;
for ( i = 0; i < dynamicImages.length; i++ ) {
imageSet = dynamicImages[i].getElementsByClassName( 'image' );
for ( j = 0; j < imageSet.length; j++ ) {
if ( j > 0 ) {
imageSet[j].style.display = 'none';
}
imageSet[j].addEventListener( 'click', function ( event ) {
event.stopImmediatePropagation();
event.preventDefault();
this.style.display = 'none';
if ( this.nextElementSibling !== null ) {
this.nextElementSibling.style.display = 'inline';
} else {
this.parentNode.getElementsByClassName( 'image' )[0].style.display = 'inline';
}
});
}
}
}() );

Revision as of 22:55, 23 January 2024

/* Any JavaScript here will be loaded for all users on every page load. */

mw.loader.load( 'https://cdn.rawgit.com/prtksxna/persistent-toc/master/ptoc.css', 'text/css' );
mw.loader.load( 'https://cdn.rawgit.com/prtksxna/persistent-toc/master/ptoc.js', 'text/javascript' );


( function () {
	'use strict';
 
	var dynamicImages = document.getElementsByClassName( 'dynamic-images'),
		i, imageSet , j;
 
	for ( i = 0; i < dynamicImages.length; i++ ) {
		imageSet = dynamicImages[i].getElementsByClassName( 'image' );
		for ( j = 0; j < imageSet.length; j++ ) {
			if ( j > 0 ) {
				imageSet[j].style.display = 'none';
			}
			imageSet[j].addEventListener( 'click', function ( event ) {
				event.stopImmediatePropagation();
				event.preventDefault();
				this.style.display = 'none';
				if ( this.nextElementSibling !== null ) {
					this.nextElementSibling.style.display = 'inline';
				} else {
					this.parentNode.getElementsByClassName( 'image' )[0].style.display = 'inline';
				}
			});
		}
	}
}() );