23-01-2026
This commit is contained in:
parent
07959c0ba2
commit
854ce02bf6
166 changed files with 32909 additions and 1262 deletions
|
|
@ -1,38 +1,48 @@
|
|||
<script>
|
||||
// Theme Toggle Funktionalität
|
||||
const themeToggleBtn = document.getElementById('theme-toggle');
|
||||
const themeToggleLightIcon = document.getElementById('theme-toggle-light-icon');
|
||||
const themeToggleDarkIcon = document.getElementById('theme-toggle-dark-icon');
|
||||
const themeToggleText = document.getElementById('theme-toggle-text');
|
||||
const html = document.documentElement;
|
||||
(function() {
|
||||
// Theme Toggle Funktionalität
|
||||
const themeToggleBtn = document.getElementById('theme-toggle');
|
||||
const themeToggleLightIcon = document.getElementById('theme-toggle-light-icon');
|
||||
const themeToggleDarkIcon = document.getElementById('theme-toggle-dark-icon');
|
||||
const themeToggleText = document.getElementById('theme-toggle-text');
|
||||
const html = document.documentElement;
|
||||
|
||||
// Theme aus localStorage laden oder Standard verwenden
|
||||
const savedTheme = localStorage.getItem('theme') || 'dark';
|
||||
|
||||
function updateThemeUI(theme) {
|
||||
if (theme === 'dark') {
|
||||
html.classList.add('dark');
|
||||
themeToggleLightIcon.classList.remove('hidden');
|
||||
themeToggleDarkIcon.classList.add('hidden');
|
||||
themeToggleText.textContent = 'Hell';
|
||||
} else {
|
||||
html.classList.remove('dark');
|
||||
themeToggleLightIcon.classList.add('hidden');
|
||||
themeToggleDarkIcon.classList.remove('hidden');
|
||||
themeToggleText.textContent = 'Dunkel';
|
||||
// Abbrechen wenn Elemente nicht gefunden wurden
|
||||
if (!themeToggleBtn || !themeToggleLightIcon || !themeToggleDarkIcon || !themeToggleText) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Initiales Theme setzen
|
||||
updateThemeUI(savedTheme);
|
||||
// Theme aus localStorage laden oder Standard verwenden
|
||||
const savedTheme = localStorage.getItem('theme') || 'dark';
|
||||
|
||||
// Toggle Button Event
|
||||
themeToggleBtn.addEventListener('click', () => {
|
||||
const currentTheme = html.classList.contains('dark') ? 'dark' : 'light';
|
||||
const newTheme = currentTheme === 'dark' ? 'light' : 'dark';
|
||||
function updateThemeUI(theme) {
|
||||
if (theme === 'dark') {
|
||||
html.classList.add('dark');
|
||||
themeToggleLightIcon.classList.remove('hidden');
|
||||
themeToggleDarkIcon.classList.add('hidden');
|
||||
themeToggleText.textContent = 'Hell';
|
||||
} else {
|
||||
html.classList.remove('dark');
|
||||
themeToggleLightIcon.classList.add('hidden');
|
||||
themeToggleDarkIcon.classList.remove('hidden');
|
||||
themeToggleText.textContent = 'Dunkel';
|
||||
}
|
||||
}
|
||||
|
||||
localStorage.setItem('theme', newTheme);
|
||||
updateThemeUI(newTheme);
|
||||
});
|
||||
// Initiales Theme setzen
|
||||
updateThemeUI(savedTheme);
|
||||
|
||||
// Vorherigen Event-Listener entfernen (falls vorhanden) und neuen hinzufügen
|
||||
const newBtn = themeToggleBtn.cloneNode(true);
|
||||
themeToggleBtn.parentNode.replaceChild(newBtn, themeToggleBtn);
|
||||
|
||||
newBtn.addEventListener('click', () => {
|
||||
const currentTheme = html.classList.contains('dark') ? 'dark' : 'light';
|
||||
const newTheme = currentTheme === 'dark' ? 'light' : 'dark';
|
||||
|
||||
localStorage.setItem('theme', newTheme);
|
||||
updateThemeUI(newTheme);
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue