MediaWiki:Common.js: Unterschied zwischen den Versionen
Erscheinungsbild
Gerard (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Gerard (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung Markierung: Zurückgesetzt |
||
| Zeile 42: | Zeile 42: | ||
/* Zustände merken */ | /* Zustände merken */ | ||
$(document).ready(function () { | |||
$('.mw-portlet').each(function () { | |||
var id = $(this).attr('id'); | |||
if (!id) return; | |||
var key = 'portlet-state-' + id; | |||
var state = localStorage.getItem(key); | |||
var portlet = $(this); | |||
var heading = portlet.find('.vector-menu-heading'); | |||
var content = portlet.find('.vector-menu-content'); | |||
// Zustand wiederherstellen – Default = eingeklappt | |||
if (state === 'collapsed' || state === null) { | |||
content.hide(); | |||
heading.addClass('collapsed'); | |||
} else { | |||
content.show(); | |||
heading.removeClass('collapsed'); | |||
} | |||
// Klick-Handler – immer lokal ableiten | |||
heading.off('click.portlet').on('click.portlet', function () { | |||
var h = $(this); | |||
var p = h.closest('.mw-portlet'); | |||
var c = p.find('.vector-menu-content'); | |||
c.toggle(); | |||
var collapsed = c.is(':hidden'); | |||
if (collapsed) { | |||
h.addClass('collapsed'); | |||
} else { | |||
h.removeClass('collapsed'); | |||
} | |||
localStorage.setItem(key, collapsed ? 'collapsed' : 'expanded'); | |||
}); | |||
}); | |||
}); | |||
Version vom 26. Mai 2026, 13:15 Uhr
/* ============================================================
Sidebar einklappbar – Vector‑2011 + Vector‑2022
============================================================ */
$(document).ready(function() {
/* Vector‑2022 */
$('.mw-portlet .vector-menu-heading').each(function() {
const heading = $(this);
// Vector‑2022: Inhalt liegt in .vector-menu-content-list
const content = heading.closest('.mw-portlet').find('.vector-menu-content-list');
if (content.length) {
heading.css('cursor', 'pointer');
heading.on('click', function(e) {
e.preventDefault();
e.stopPropagation();
content.slideToggle(200);
heading.toggleClass('collapsed');
});
}
});
/* Vector‑2011 */
$('.mw-portlet h3').each(function() {
const heading = $(this);
const content = heading.next('.body');
if (content.length) {
heading.css('cursor', 'pointer');
heading.on('click', function() {
content.slideToggle(200);
heading.toggleClass('collapsed');
});
}
});
});
/* Zustände merken */
$(document).ready(function () {
$('.mw-portlet').each(function () {
var id = $(this).attr('id');
if (!id) return;
var key = 'portlet-state-' + id;
var state = localStorage.getItem(key);
var portlet = $(this);
var heading = portlet.find('.vector-menu-heading');
var content = portlet.find('.vector-menu-content');
// Zustand wiederherstellen – Default = eingeklappt
if (state === 'collapsed' || state === null) {
content.hide();
heading.addClass('collapsed');
} else {
content.show();
heading.removeClass('collapsed');
}
// Klick-Handler – immer lokal ableiten
heading.off('click.portlet').on('click.portlet', function () {
var h = $(this);
var p = h.closest('.mw-portlet');
var c = p.find('.vector-menu-content');
c.toggle();
var collapsed = c.is(':hidden');
if (collapsed) {
h.addClass('collapsed');
} else {
h.removeClass('collapsed');
}
localStorage.setItem(key, collapsed ? 'collapsed' : 'expanded');
});
});
});