Zum Inhalt springen

MediaWiki:Common.js: Unterschied zwischen den Versionen

Aus TerranianStar
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
/* ============================================================
/* ============================================================
   Sidebar einklappbar – Vector‑2011 + Vector‑2022
   Sidebar einklappbar – kompatibel mit Vector‑2022 Hybrid
   ============================================================ */
   ============================================================ */


$(document).ready(function() {
$(document).ready(function () {


    /* Vector‑2022 */
     $('.mw-portlet').each(function () {
     $('.mw-portlet .vector-menu-heading').each(function() {
        const heading = $(this);


         // Vector‑2022: Inhalt liegt in .vector-menu-content-list
         const portlet = $(this);
         const content = heading.closest('.mw-portlet').find('.vector-menu-content-list');
        const heading = portlet.find('.vector-menu-heading');
         const content = portlet.find('.vector-menu-content'); // ← WICHTIG: dein echter Inhalt


         if (content.length) {
         if (!heading.length || !content.length) return;
            heading.css('cursor', 'pointer');


            heading.on('click', function(e) {
        // Klickbar machen
                e.preventDefault();
        heading.css('cursor', 'pointer');
                e.stopPropagation();
 
                content.slideToggle(200);
        // Zustand aus localStorage laden
                heading.toggleClass('collapsed');
        const key = 'sidebar-state-' + portlet.attr('id');
            });
        const saved = localStorage.getItem(key);
 
        if (saved === 'collapsed') {
            content.hide();
            heading.addClass('collapsed');
         }
         }
    });


    /* Vector‑2011 */
        // Klick-Handler
    $('.mw-portlet h3').each(function() {
        heading.on('click', function (e) {
        const heading = $(this);
            e.preventDefault();
        const content = heading.next('.body');
            e.stopPropagation();
 
            content.slideToggle(200);


        if (content.length) {
            const collapsed = content.is(':hidden');
             heading.css('cursor', 'pointer');
             heading.toggleClass('collapsed', collapsed);


             heading.on('click', function() {
             localStorage.setItem(key, collapsed ? 'collapsed' : 'expanded');
                content.slideToggle(200);
        });
                heading.toggleClass('collapsed');
            });
        }
     });
     });
});
});
/* Zustände merken */
/*deaktiviert*/

Version vom 26. Mai 2026, 13:57 Uhr

/* ============================================================
   Sidebar einklappbar – kompatibel mit Vector‑2022 Hybrid
   ============================================================ */

$(document).ready(function () {

    $('.mw-portlet').each(function () {

        const portlet = $(this);
        const heading = portlet.find('.vector-menu-heading');
        const content = portlet.find('.vector-menu-content'); // ← WICHTIG: dein echter Inhalt

        if (!heading.length || !content.length) return;

        // Klickbar machen
        heading.css('cursor', 'pointer');

        // Zustand aus localStorage laden
        const key = 'sidebar-state-' + portlet.attr('id');
        const saved = localStorage.getItem(key);

        if (saved === 'collapsed') {
            content.hide();
            heading.addClass('collapsed');
        }

        // Klick-Handler
        heading.on('click', function (e) {
            e.preventDefault();
            e.stopPropagation();

            content.slideToggle(200);

            const collapsed = content.is(':hidden');
            heading.toggleClass('collapsed', collapsed);

            localStorage.setItem(key, collapsed ? 'collapsed' : 'expanded');
        });
    });
});