MediaWiki:Common.js: Difference between revisions
mNo edit summary |
mNo edit summary |
||
| Line 175: | Line 175: | ||
}); | }); | ||
/* V2 Level Progression Accordion */ | |||
(function () { | |||
function initLevelCards() { | |||
document.querySelectorAll('.ooo-v2-level-heading').forEach(function (heading) { | |||
if (heading.dataset.levelInitialized) return; | |||
heading.dataset.levelInitialized = '1'; | |||
function toggle() { | |||
var card = heading.closest('.ooo-v2-level-card'); | |||
var details = card.querySelector('.ooo-v2-level-details'); | |||
if (!details) return; | |||
var opening = details.hidden; | |||
details.hidden = !opening; | |||
card.classList.toggle('is-open', opening); | |||
heading.setAttribute('aria-expanded', String(opening)); | |||
} | |||
heading.addEventListener('click', toggle); | |||
heading.addEventListener('keydown', function (event) { | |||
if (event.key === 'Enter' || event.key === ' ') { | |||
event.preventDefault(); | |||
toggle(); | |||
} | |||
}); | |||
}); | |||
} | |||
mw.hook('wikipage.content').add(initLevelCards); | |||
})(); | |||