MediaWiki:Minerva.js: Difference between revisions
No edit summary Tags: Mobile edit Mobile web edit |
No edit summary Tags: Mobile edit Mobile web edit |
||
| Line 27: | Line 27: | ||
document.querySelector('#p-main-categories .title-recommended').addEventListener('click', function () { | document.querySelector('#p-main-categories .title-recommended').addEventListener('click', function () { | ||
openList(this | openList(this); | ||
}); | }); | ||
document.querySelector('#p-main-categories .title-category').addEventListener('click', function () { | document.querySelector('#p-main-categories .title-category').addEventListener('click', function () { | ||
openList(this | openList(this); | ||
}); | }); | ||
function openList(titleLi | function openList(titleLi) { | ||
// 현재 li가 열려 있으면 닫기 | |||
if (titleLi.classList.contains('open')) { | if (titleLi.classList.contains('open')) { | ||
titleLi.classList.remove('open'); | titleLi.classList.remove('open'); | ||
let next = titleLi.nextElementSibling; | |||
while (next && !next.classList.contains('title-recommended') && !next.classList.contains('title-category')) { | |||
next.style.display = 'none'; | |||
next = next.nextElementSibling; | |||
} | |||
} else { | } else { | ||
// 열기 | |||
titleLi.classList.add('open'); | titleLi.classList.add('open'); | ||
let next = titleLi.nextElementSibling; | |||
while (next && !next.classList.contains('title-recommended') && !next.classList.contains('title-category')) { | |||
next.style.display = 'block'; | |||
next = next.nextElementSibling; | |||
} | |||
} | } | ||
} | } | ||