MediaWiki:Common.js: Difference between revisions
Appearance
No edit summary |
No edit summary |
||
| Line 2: | Line 2: | ||
$(function () { | $(function () { | ||
/* ================= TAB SYSTEM (GLOBAL) ================= */ | |||
/* ================= | |||
document.querySelectorAll('.mw-tab-buttons').forEach(group => { | document.querySelectorAll('.mw-tab-buttons').forEach(group => { | ||
const buttons = group.querySelectorAll('.mw-tab-btn'); | const buttons = group.querySelectorAll('.mw-tab-btn'); | ||
| Line 14: | Line 11: | ||
const container = group.closest('.mw-tab-content') || document; | const container = group.closest('.mw-tab-content') || document; | ||
container.querySelectorAll('.mw-tab-content').forEach(c => c.style.display = 'none'); | // Only affect tabs in this section | ||
container.querySelectorAll('.mw-tab-btn').forEach(b => b.classList.remove('active')); | container.querySelectorAll('.mw-tab-content').forEach(c => { | ||
c.style.display = 'none'; | |||
}); | |||
container.querySelectorAll('.mw-tab-btn').forEach(b => { | |||
b.classList.remove('active'); | |||
}); | |||
this.classList.add('active'); | this.classList.add('active'); | ||
| Line 24: | Line 27: | ||
}); | }); | ||
// Auto-open first tab | |||
if (buttons.length) buttons[0].click(); | if (buttons.length) buttons[0].click(); | ||
}); | }); | ||
}); | }); | ||
}); | }); | ||
Revision as of 18:36, 21 April 2026
mw.loader.using('mediawiki.util').then(function () {
$(function () {
/* ================= TAB SYSTEM (GLOBAL) ================= */
document.querySelectorAll('.mw-tab-buttons').forEach(group => {
const buttons = group.querySelectorAll('.mw-tab-btn');
buttons.forEach(btn => {
btn.onclick = function () {
const tabId = this.dataset.tab;
const container = group.closest('.mw-tab-content') || document;
// Only affect tabs in this section
container.querySelectorAll('.mw-tab-content').forEach(c => {
c.style.display = 'none';
});
container.querySelectorAll('.mw-tab-btn').forEach(b => {
b.classList.remove('active');
});
this.classList.add('active');
const target = container.querySelector('#' + tabId);
if (target) target.style.display = 'block';
};
});
// Auto-open first tab
if (buttons.length) buttons[0].click();
});
});
});