Wikipedia:Technik/Skin/Gadgets/NavFrameLegacy
From Wikipedia, the free encyclopedia
NavFrameLegacy
Das Gadget NavFrameLegacy ist nicht für Benutzerkonten konfigurierbar.
Es bewirkt, dass die veraltete NavFrame-Technik für ausklappbare Navigationsleisten in einigen nachgeordneten Namensräumen, in denen sie noch direkt im Seitenquelltext verwendet wird, weiterhin funktioniert. Dazu wird sowohl CSS als auch JavaScript geladen.
Die CSS-Definitionen befanden sich bis März 2024 in der allgemeinen MediaWiki:Common.css. Im Artikel- und einigen anderen Namensräumen wurde die zentrale CSS-Definition bis Mai 2025 bereits durch TemplateStyles ersetzt. Der JavaScript-Code war bis August 2025 Teil der MediaWiki:Common.js. Er wurde dann in vereinfachter und aktualisierter Form Teil dieses Gadgets.
Profil
| NavFrameLegacy: Stildefinitionen der veralteten NavFrame-Klasse in einigen Namensräumen | |
| Eigenschaft | Zuweisung |
|---|---|
| ResourceLoader | unterstützt |
| default | Vorgabe für alle |
| hidden | versteckt |
| namespaces | 12345 |
| scripts | NavFrameLegacy.js |
| styles | NavFrameLegacy.css |
* NavFrameLegacy[ResourceLoader|default|hidden|namespaces=1,2,3,4,5]|NavFrameLegacy.js|NavFrameLegacy.cssCSS
/*
* Stylesheet-Ergänzung zu Standard-Navigationsleisten:
* [[Hilfe:Navigationsleisten]], [[Vorlage:Navigationsleiste]]
*/
div.NavFrame {
border-width: 1px;
border-style: solid;
border-color: var(--dewiki-rahmenfarbe1);
clear: both;
font-size: 95%;
margin-top: 1.5em;
min-height: 0; /* IE 7 */
padding: 2px;
text-align: center;
}
div.NavPic {
float: left;
padding: 2px;
}
div.NavHead {
background-color: var(--dewiki-hintergrundfarbe5);
color: var(--color-base, #202122);
font-weight: bold;
}
div.NavFrame:after {
clear: both;
content: "";
display: block;
}
/* Automatisches Verschmelzen benachbarter Navigationsleisten */
div.NavFrame + div.NavFrame,
div.NavFrame + link + div.NavFrame,
div.NavFrame + style + div.NavFrame {
margin-top: -1px;
}
/*
* „Ausklappen“-Button an Navigationsleisten,
* ursprünglich in [[MediaWiki:Common.js]] implementiert
*/
.NavToggle {
float: right;
font-size: x-small;
}
/* Dunkelmodus */
@media screen {
html.skin-theme-clientpref-night .NavPic span[typeof="mw:File"] img {
background-color: #c8ccd1;
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .NavPic span[typeof="mw:File"] img {
background-color: #c8ccd1;
}
}
/*
* Verschmelzen mittels [[Vorlage:NaviBlock]]
* Im Gegensatz zum automatischen Verschmelzen gibt es bei dieser Variante keine
* Trennlinie zwischen den Leisten. Möglicherweise war dies ursprünglich nur ein
* IE-6-Workaround, da das automatische Verschmelzen im IE 6 nicht funktioniert.
*/
div.BoxenVerschmelzen {
border-width: 1px;
border-style: solid;
border-color: var(--dewiki-rahmenfarbe1);
clear: both;
font-size: 95%;
margin-top: 1.5em;
padding-top: 2px;
}
div.BoxenVerschmelzen div.NavFrame {
border: none;
font-size: 100%;
margin: 0;
padding-top: 0;
}
JS
( function ( mw, $ ) {
'use strict';
async function makeNavFrameCollapsible( $content ) {
let $nfr = $content
.find( '.NavFrame:not( .mw-collapsible )' )
.addClass( 'mw-collapsible' )
.each( function () {
$( this ).find( '.NavContent' ).addClass( 'mw-collapsible-content' );
} );
if ( $nfr.length ) {
await mw.loader.using( 'jquery.makeCollapsible' );
$nfr.makeCollapsible();
}
}
async function initNavFrameAutocollapse( $collapsibles ) {
let $nfr = $collapsibles.filter( '.NavFrame' );
if ( !$nfr.length ) {
return;
}
await mw.loader.using( [ 'user', 'mediawiki.user', 'user.options' ] );
let showDefaultCount = mw.user.options.get(
'NavigationBarShowDefault',
typeof window.NavigationBarShowDefault !== 'undefined' ? window.NavigationBarShowDefault : 1
);
if ( showDefaultCount < $nfr.length && mw.config.get( 'wgNamespaceNumber' ) !== 10 ) {
$nfr.each( function () {
$( this ).data( 'mw-collapsible' ).collapse();
} );
}
}
mw.hook( 'wikipage.content' ).add( makeNavFrameCollapsible );
mw.hook( 'wikipage.collapsibleContent' ).add( initNavFrameAutocollapse );
}( window.mediaWiki, window.jQuery ) );
Änderungswünsche
Bitte auf MediaWiki/Änderungen vorschlagen.