MediaWiki:Common.js: Difference between revisions
Jump to navigation
Jump to search
(Implemented section-collapse and stop-section-collapse.) |
(Lets see if I understand JS.) |
||
| Line 6: | Line 6: | ||
for (var i = 0; i < collapsing.length ; i++) { | for (var i = 0; i < collapsing.length ; i++) { | ||
collapsing.item(i).addEventListener('click',collapseHandler,false); | collapsing.item(i).addEventListener('click',collapseHandler,false); | ||
if (collapsing.item(i).contains("section-collapsed")) { | |||
collapseHandler(collapsing.item(i)); | |||
} | |||
} | } | ||
} | } | ||
| Line 11: | Line 14: | ||
function collapseHandler() { | function collapseHandler() { | ||
var c = this.parentNode.parentNode.nextSibling; | var c = this.parentNode.parentNode.nextSibling; | ||
collapseHandlerThis(c); | |||
} | |||
function collapseHandlerThis(c) { | |||
while (c) { | while (c) { | ||
if (c.classList) { | if (c.classList) { | ||
Revision as of 09:44, 7 April 2019
/* Any JavaScript here will be loaded for all users on every page load. */
/* Implements section-collapse and stop-section-collapse */
var collapsing = document.querySelectorAll(".section-collapse");
if (collapsing.length>0) {
for (var i = 0; i < collapsing.length ; i++) {
collapsing.item(i).addEventListener('click',collapseHandler,false);
if (collapsing.item(i).contains("section-collapsed")) {
collapseHandler(collapsing.item(i));
}
}
}
function collapseHandler() {
var c = this.parentNode.parentNode.nextSibling;
collapseHandlerThis(c);
}
function collapseHandlerThis(c) {
while (c) {
if (c.classList) {
if (c.classList.contains("section-collapse") || c.classList.contains("stop-section-collapse"))
break;
c.classList.toggle('section-collapsed');
}
c = c.nextSibling;
}
this.classList.toggle('collapsed-icon');
}