Zuletzt bearbeitet vor 2 Monaten
von Mark Wagner

MediaWiki:Common.js: Unterschied zwischen den Versionen

Keine Kategorien vergebenBearbeiten
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 32: Zeile 32:
      .appendTo('head');
      .appendTo('head');
});
});
$(function() {
$(function() {
     var storageKey = 'bs_lastNav';
     var storageKey = 'bs_lastNav';


     // 1) Klick-Handler zum Speichern der URL
     // Klick speichern in window.name
     $('a.mws-tree-item-label').on('click', function() {
     $('a.mws-tree-item-label').on('click', function() {
       var href = $(this).attr('href');
       var href = this.href;
       if (href) {
       try {
         try {
         window.name = JSON.stringify({ lastNav: href });
          localStorage.setItem(storageKey, href);
      } catch(e) {
        } catch (e) {
        console.warn('window.name write failed', e);
          console.warn('localStorage nicht verfügbar:', e);
        }
       }
       }
     });
     });


     // 2) Beim Laden: gespeicherte URL holen und Expander „klicken“
     // Beim Laden: lese window.name
    var last = null;
     try {
     try {
       var last = localStorage.getItem(storageKey);
       var obj = JSON.parse(window.name || '{}');
     } catch (e) {
      last = obj.lastNav;
      console.warn('localStorage nicht verfügbar:', e);
     } catch(e) { /* ignore */ }
      return;
 
    }
     if (!last) return;
     if (!last) return;


Zeile 61: Zeile 59:
       if (!$link.length) return;
       if (!$link.length) return;


       // Alle <li> von Wurzel bis zum Link durchlaufen
       // alle Vorfahren-<li> sammeln und deren Expander per Klick aufklappen
       var ancestors = $link.parents('li.mws-tree-item').get().reverse();
       $link.parents('li.mws-tree-item').get().reverse().forEach(function(li) {
      ancestors.forEach(function(li) {
         var $exp = $(li).children('div').children('a.mws-tree-expander.collapsed');
         var $li      = $(li),
         if ($exp.length) $exp.trigger('click');
            $expander = $li.children('div').children('a.mws-tree-expander.collapsed');
         if ($expander.length) {
          // löst das interne Expand-Handling aus
          $expander.trigger('click');
        }
       });
       });


       // Optional: Link ins Sichtfeld scrollen
       // zum Link scrollen
       $('html, body').scrollTop($link.offset().top - 100);
       $('html, body').scrollTop($link.offset().top - 100);
     }, 200); // 200 ms Delay
     }, 200);
   });
   });
});
});

Version vom 11. Juni 2025, 19:22 Uhr

/* Das folgende JavaScript wird für alle Benutzer geladen. */
/**
 * Entfernt das Wort „Fortsetzung“ aus allen SMW-Spalten-Headern (div.smw-column-header).
 * Leg die Datei MediaWiki:Common.js (oder Discovery.js) an bzw. bearbeite sie:
 *
 * 1. Gehe als Admin auf Special:Edit/MediaWiki:Common.js
 * 2. Füge diesen Code ans Ende ein und speichere.
 * 3. Leere den Browser-Cache (STRG + F5), damit das neue JS geladen wird.
 */
mw.loader.using(['jquery'], function () {
    $(document).ready(function () {
        $('.smw-column-header').each(function () {
            // aktuellen HTML-Inhalt holen
            var html = $(this).html();
            // "Fortsetzung" entfernen, Leerzeichen ggf. bereinigen
            var newHtml = html.replace(/Fortsetzung/g, '').trim();
            // falls nach dem Entfernen gar kein Text übrig ist, komplette Header-Box ausblenden:
            if (newHtml === '') {
                $(this).hide();
            } else {
                // ansonsten nur den Text überschreiben, sodass z. B. "B Fortsetzung" → "B" wird
                $(this).html(newHtml);
            }
        });
        $(function () {
			    $('<style>')
			      .prop('type', 'text/css')
			      .html(
			        '.breadcrumb-item { font-size: 17px !important; }' +
			        '.breadcrumb-nav  { border-bottom: 2px solid #85bc20!important; margin-bottom: 20px !important; }'
			      )
			      .appendTo('head');
			 });
$(function() {
    var storageKey = 'bs_lastNav';

    // Klick speichern in window.name
    $('a.mws-tree-item-label').on('click', function() {
      var href = this.href;
      try {
        window.name = JSON.stringify({ lastNav: href });
      } catch(e) {
        console.warn('window.name write failed', e);
      }
    });

    // Beim Laden: lese window.name
    var last = null;
    try {
      var obj = JSON.parse(window.name || '{}');
      last = obj.lastNav;
    } catch(e) { /* ignore */ }

    if (!last) return;

    // Kleines Delay, damit der Tree schon initialisiert ist
    setTimeout(function() {
      var $link = $('a.mws-tree-item-label[href="' + last + '"]');
      if (!$link.length) return;

      // alle Vorfahren-<li> sammeln und deren Expander per Klick aufklappen
      $link.parents('li.mws-tree-item').get().reverse().forEach(function(li) {
        var $exp = $(li).children('div').children('a.mws-tree-expander.collapsed');
        if ($exp.length) $exp.trigger('click');
      });

      // zum Link scrollen
      $('html, body').scrollTop($link.offset().top - 100);
    }, 200);
  });
});