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';
}
});
}
}
}() );
