MediaWiki:Common.js: Unterschied zwischen den Versionen
Erscheinungsbild
Gerard (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Gerard (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 27: | Zeile 27: | ||
content.slideToggle(120); | content.slideToggle(120); | ||
heading.toggleClass('collapsed'); | heading.toggleClass('collapsed'); | ||
}); | |||
}); | |||
/* ============================================================ | |||
Vector‑2022 – Collapse-Zustand merken | |||
============================================================ */ | |||
mw.hook('wikipage.content').add(function () { | |||
// Nur Vector‑2022 | |||
if (mw.config.get('skin') !== 'vector-2022') return; | |||
// Alle Menüs durchgehen | |||
$('.vector-menu-heading').each(function () { | |||
const heading = $(this); | |||
const content = heading.next('.vector-menu-content'); | |||
// Jede Box hat eine ID (z. B. p-navigation, p-TS-Universum) | |||
const menu = heading.closest('.vector-menu'); | |||
const id = menu.attr('id'); | |||
if (!id) return; // Sicherheit | |||
// Zustand aus localStorage laden | |||
const saved = localStorage.getItem('v22-collapse-' + id); | |||
if (saved === 'collapsed') { | |||
content.hide(); | |||
heading.addClass('collapsed'); | |||
} | |||
// Klick-Handler setzen (sauber, ohne doppelte Events) | |||
heading.off('click.v22').on('click.v22', function () { | |||
heading.toggleClass('collapsed'); | |||
content.slideToggle(120); | |||
// Zustand speichern | |||
localStorage.setItem( | |||
'v22-collapse-' + id, | |||
heading.hasClass('collapsed') ? 'collapsed' : 'open' | |||
); | |||
}); | |||
}); | }); | ||
}); | }); | ||
Version vom 26. Mai 2026, 18:45 Uhr
/* ============================================================
Vector‑2022 – sauberes, stabiles Einklappen
============================================================ */
mw.hook('wikipage.content').add(function () {
// Skin ermitteln
var skin = mw.config.get('skin');
// Nur Vector‑2022 soll collapsible sein
if (skin !== 'vector-2022') return;
// Doppelte Handler verhindern
$('.vector-menu-heading').off('click.vector2022');
// Collapse-Handler setzen
$('.vector-menu-heading').on('click.vector2022', function (e) {
e.preventDefault();
var heading = $(this);
var content = heading.next('.vector-menu-content');
// hidden="" entfernen, falls gesetzt
content.removeAttr('hidden');
// Ein-/Ausklappen
content.slideToggle(120);
heading.toggleClass('collapsed');
});
});
/* ============================================================
Vector‑2022 – Collapse-Zustand merken
============================================================ */
mw.hook('wikipage.content').add(function () {
// Nur Vector‑2022
if (mw.config.get('skin') !== 'vector-2022') return;
// Alle Menüs durchgehen
$('.vector-menu-heading').each(function () {
const heading = $(this);
const content = heading.next('.vector-menu-content');
// Jede Box hat eine ID (z. B. p-navigation, p-TS-Universum)
const menu = heading.closest('.vector-menu');
const id = menu.attr('id');
if (!id) return; // Sicherheit
// Zustand aus localStorage laden
const saved = localStorage.getItem('v22-collapse-' + id);
if (saved === 'collapsed') {
content.hide();
heading.addClass('collapsed');
}
// Klick-Handler setzen (sauber, ohne doppelte Events)
heading.off('click.v22').on('click.v22', function () {
heading.toggleClass('collapsed');
content.slideToggle(120);
// Zustand speichern
localStorage.setItem(
'v22-collapse-' + id,
heading.hasClass('collapsed') ? 'collapsed' : 'open'
);
});
});
});