MediaWiki:Common.js: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Asphyx (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
Asphyx (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
||
Zeile 26: | Zeile 26: | ||
$header.find('.menu-indicator').css({ | $header.find('.menu-indicator').css({ | ||
'margin-right': '5px', | 'margin-right': '5px', | ||
'transition': 'transform 0.3s ease' | 'transition': 'transform 0.3s ease' // Sanfte Rotation über 0.3 Sekunden | ||
}); | }); | ||
// Inhalt standardmäßig sichtbar | // Inhalt standardmäßig sichtbar | ||
$content.show(); | $content.show(); | ||
// Klick-Event | // Klick-Event mit synchroner Animation | ||
$header.click(function(e) { | $header.click(function(e) { | ||
e.preventDefault(); | e.preventDefault(); | ||
var $indicator = $header.find('.menu-indicator'); | |||
if (isOpen) { | |||
// Schließen: Inhalt einklappen, Pfeil nach rechts drehen | |||
$content.slideUp(300); | |||
$indicator.css({ | |||
'transform': 'rotate(-90deg)' // Dreht nach rechts (▶) | |||
}); | |||
} | } else { | ||
} | // Öffnen: Inhalt ausklappen, Pfeil nach unten drehen | ||
$content.slideDown(300); | |||
$indicator.css({ | |||
'transform': 'rotate(0deg)' // Dreht nach unten (▼) | |||
}); | |||
} | |||
isOpen = !isOpen; // Zustand umschalten | |||
}); | }); | ||
}); | }); |
Version vom 30. März 2025, 11:03 Uhr
/* Das folgende JavaScript wird für alle Benutzer geladen. */
$(document).ready(function() {
console.log("Common.js wird geladen!");
// Ziel: Das HOSTING-Portal
var $portal = $('#p-HOSTING');
var $header = $portal.find('#p-HOSTING-label');
var $content = $portal.find('.vector-menu-content-list');
var isOpen = true; // Standardmäßig geöffnet
// Debugging
console.log("Portal gefunden:", $portal.length > 0 ? "Ja" : "Nein");
console.log("Header:", $header.text());
console.log("Untermenüs:", $content.find('li').length);
// Pfeil-Indikator hinzufügen (▼ für geöffnet)
$header.prepend('<span class="menu-indicator">▼</span> ');
// Styling für Header und Indikator
$header.css({
'cursor': 'pointer',
'font-weight': 'bold',
'display': 'flex',
'align-items': 'center'
});
$header.find('.menu-indicator').css({
'margin-right': '5px',
'transition': 'transform 0.3s ease' // Sanfte Rotation über 0.3 Sekunden
});
// Inhalt standardmäßig sichtbar
$content.show();
// Klick-Event mit synchroner Animation
$header.click(function(e) {
e.preventDefault();
var $indicator = $header.find('.menu-indicator');
if (isOpen) {
// Schließen: Inhalt einklappen, Pfeil nach rechts drehen
$content.slideUp(300);
$indicator.css({
'transform': 'rotate(-90deg)' // Dreht nach rechts (▶)
});
} else {
// Öffnen: Inhalt ausklappen, Pfeil nach unten drehen
$content.slideDown(300);
$indicator.css({
'transform': 'rotate(0deg)' // Dreht nach unten (▼)
});
}
isOpen = !isOpen; // Zustand umschalten
});
});