fixed dark mode flash finally

This commit is contained in:
Joshua Seigler 2025-06-19 02:25:30 -04:00
parent 8de53a9320
commit 863ed9c128
3 changed files with 18 additions and 15 deletions

View file

@ -85,19 +85,17 @@ function addEffect({ target }) {
}); });
} }
document.addEventListener('DOMContentLoaded', () => { Object.entries(defaultPrefs).forEach(([key, defaultPref]) => {
Object.entries(defaultPrefs).forEach(([key, defaultPref]) => { const currentPref = localStorage.getItem(key) ?? defaultPref;
const currentPref = localStorage.getItem(key) ?? defaultPref; applyPreference(key, currentPref, false);
applyPreference(key, currentPref, false); document.querySelectorAll(`input[name=${key}]`).forEach((input) => {
document.querySelectorAll(`input[name=${key}]`).forEach((input) => { input.addEventListener("change", (e) => {
input.addEventListener("change", (e) => { applyPreference(key, e.currentTarget.value, true);
applyPreference(key, e.currentTarget.value, true);
});
}); });
}); });
document.addEventListener("mouseenter", addEffect, true);
document.addEventListener("focus", addEffect, true);
document.addEventListener("mouseleave", removeEffect, true);
document.addEventListener("blur", removeEffect, true);
}); });
document.addEventListener("mouseenter", addEffect, true);
document.addEventListener("focus", addEffect, true);
document.addEventListener("mouseleave", removeEffect, true);
document.addEventListener("blur", removeEffect, true);

View file

@ -0,0 +1,4 @@
const savedTheme = localStorage.getItem('theme');
if (savedTheme != null) {
document.body.setAttribute("data-theme", savedTheme);
}

View file

@ -11,7 +11,7 @@ title: Joshua's Homepage
<link rel="stylesheet" href="{{ "/site.css" | url }}"/> <link rel="stylesheet" href="{{ "/site.css" | url }}"/>
<link rel="preload" as="font" href="/fonts/inter/InterVariable.woff2"/> <link rel="preload" as="font" href="/fonts/inter/InterVariable.woff2"/>
<script defer src="https://stats.apps.seigler.net/script.js" data-website-id="ccb4bd94-2a71-47fe-8eea-d85bf75b7f6d"></script> <script defer src="https://stats.apps.seigler.net/script.js" data-website-id="ccb4bd94-2a71-47fe-8eea-d85bf75b7f6d"></script>
<script async src="/scripts/effects.js"></script> <script defer src="/scripts/effects.js"></script>
<link rel="prefetch" href="/fonts/inter/InterVariable-Italic.woff2"/> <link rel="prefetch" href="/fonts/inter/InterVariable-Italic.woff2"/>
<link rel="prefetch" href="/fonts/ftaurebesh/ftaurebesh-medium.woff2"/> <link rel="prefetch" href="/fonts/ftaurebesh/ftaurebesh-medium.woff2"/>
<link rel="prefetch" href="/fonts/ftaurebesh/ftaurebesh-bold.woff2"/> <link rel="prefetch" href="/fonts/ftaurebesh/ftaurebesh-bold.woff2"/>
@ -32,10 +32,11 @@ title: Joshua's Homepage
<meta name="generator" content="{{ eleventy.generator }}"> <meta name="generator" content="{{ eleventy.generator }}">
</head> </head>
<body data-font="english" data-path="{{ page.url }}"> <body data-font="english" data-path="{{ page.url }}">
<script>{% include "-darklight.js" %}</script>
{% include "-header.njk" %} {% include "-header.njk" %}
<main data-pagefind-body> <main data-pagefind-body>
{{ content | safe }} {{ content | safe }}
</main> </main>
{% include "-footer.njk" %} {% include "-footer.njk" %}
</body> </body>
</html> </html>