Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 32: | Zeile 32: | ||
.appendTo('head'); | .appendTo('head'); | ||
}); | }); | ||
$(function() { | |||
// 0. Variablen definieren | |||
var cookieName = 'bs_lastNav', | |||
cookieMaxAge = 60 * 60 * 24 * 30; // 30 Tage | |||
// 1. Cookie‐Funktionen | |||
function setCookie(name, value, maxAge) { | |||
document.cookie = name + '=' + encodeURIComponent(value) + | |||
'; path=/; max-age=' + maxAge; | |||
} | |||
function getCookie(name) { | |||
return document.cookie.split(';').reduce(function(prev, curr) { | |||
var parts = curr.trim().split('='); | |||
return parts[0] === name ? decodeURIComponent(parts[1]) : prev; | |||
}, null); | |||
} | |||
// 2. Klick handler: speichere die URL | |||
$('a.mws-tree-item-label').on('click', function() { | |||
var href = $(this).attr('href'); | |||
if (href) { | |||
setCookie(cookieName, href, cookieMaxAge); | |||
} | |||
}); | }); | ||
// 3. Beim Laden: letzten Eintrag aufklappen | |||
var last = getCookie(cookieName); | |||
if (last) { | |||
var $link = $('a.mws-tree-item-label[href="' + last + '"]'); | |||
if ($link.length) { | |||
var $item = $link.closest('li.mws-tree-item'), | |||
$expander = $item.find('> div > a.mws-tree-expander'), | |||
$children = $item.children('ul.mws-tree-item-children'); | |||
// Expander‐Icon anpassen | |||
$expander | |||
.removeClass('collapsed') | |||
.addClass('expanded') | |||
.attr('aria-expanded', 'true'); | |||
// Unterknoten einblenden | |||
$children.show(); | |||
// Optional: scroll zum Link | |||
$('html, body').scrollTop($link.offset().top - 100); | |||
} | |||
} | |||
}); | |||
}); | }); |
Version vom 11. Juni 2025, 19:08 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() {
// 0. Variablen definieren
var cookieName = 'bs_lastNav',
cookieMaxAge = 60 * 60 * 24 * 30; // 30 Tage
// 1. Cookie‐Funktionen
function setCookie(name, value, maxAge) {
document.cookie = name + '=' + encodeURIComponent(value) +
'; path=/; max-age=' + maxAge;
}
function getCookie(name) {
return document.cookie.split(';').reduce(function(prev, curr) {
var parts = curr.trim().split('=');
return parts[0] === name ? decodeURIComponent(parts[1]) : prev;
}, null);
}
// 2. Klick handler: speichere die URL
$('a.mws-tree-item-label').on('click', function() {
var href = $(this).attr('href');
if (href) {
setCookie(cookieName, href, cookieMaxAge);
}
});
// 3. Beim Laden: letzten Eintrag aufklappen
var last = getCookie(cookieName);
if (last) {
var $link = $('a.mws-tree-item-label[href="' + last + '"]');
if ($link.length) {
var $item = $link.closest('li.mws-tree-item'),
$expander = $item.find('> div > a.mws-tree-expander'),
$children = $item.children('ul.mws-tree-item-children');
// Expander‐Icon anpassen
$expander
.removeClass('collapsed')
.addClass('expanded')
.attr('aria-expanded', 'true');
// Unterknoten einblenden
$children.show();
// Optional: scroll zum Link
$('html, body').scrollTop($link.offset().top - 100);
}
}
});
});