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]) => {
const currentPref = localStorage.getItem(key) ?? defaultPref;
applyPreference(key, currentPref, false);
document.querySelectorAll(`input[name=${key}]`).forEach((input) => {
input.addEventListener("change", (e) => {
applyPreference(key, e.currentTarget.value, true);
});
Object.entries(defaultPrefs).forEach(([key, defaultPref]) => {
const currentPref = localStorage.getItem(key) ?? defaultPref;
applyPreference(key, currentPref, false);
document.querySelectorAll(`input[name=${key}]`).forEach((input) => {
input.addEventListener("change", (e) => {
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="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 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/ftaurebesh/ftaurebesh-medium.woff2"/>
<link rel="prefetch" href="/fonts/ftaurebesh/ftaurebesh-bold.woff2"/>
@ -32,10 +32,11 @@ title: Joshua's Homepage
<meta name="generator" content="{{ eleventy.generator }}">
</head>
<body data-font="english" data-path="{{ page.url }}">
<script>{% include "-darklight.js" %}</script>
{% include "-header.njk" %}
<main data-pagefind-body>
{{ content | safe }}
</main>
{% include "-footer.njk" %}
</body>
</html>
</html>