[Fix] hamburger undefined

This commit is contained in:
2026-08-09 06:08:56 +02:00
parent 26d1295006
commit 740a90536d
+9 -4
View File
@@ -5,11 +5,11 @@ window.addEventListener("DOMContentLoaded", () => {
const themeBtn = getById("theme-switcher");
const hamburger = getByClass("hamburger");
const hamburgerIcon = hamburger.children[0]
const hamburgerIcon = hamburger?.children[0];
const menu = document.getElementsByTagName("nav")[0];
const imgs = document.getElementsByTagName("img");
const main = document.getElementsByTagName("main")[0];
const isMenuOpen = () => hamburger.classList.contains("open");
const isMenuOpen = () => hamburger?.classList.contains("open");
const theme = window.localStorage.getItem("theme");
/* Functions */
@@ -47,7 +47,7 @@ window.addEventListener("DOMContentLoaded", () => {
/* Listeners */
window.addEventListener("resize", () => isMenuOpen() && closeMenu());
main.addEventListener("click", () => isMenuOpen() && closeMenu());
if (main) main.addEventListener("click", () => isMenuOpen() && closeMenu());
/* Language persistence */
const currentLang = document.documentElement.lang || "sr";
@@ -71,15 +71,20 @@ window.addEventListener("DOMContentLoaded", () => {
});
hamburger?.addEventListener("click", () => isMenuOpen() ? closeMenu() : openMenu());
if (themeBtn) {
themeBtn.addEventListener("click", () => {
const title = themeBtn.getAttribute("title") ?? "off"
if (title.indexOf("off") !== -1) changeToDarkTheme();
else changeToLightTheme();
});
}
/* Rest */
const userPerfersDark = window?.matchMedia?.("(prefers-color-scheme: dark)").matches
if (themeBtn) {
if (!theme && userPerfersDark) changeToDarkTheme();
else theme === "light" ? changeToLightTheme() : changeToDarkTheme();
else if (theme === "light") changeToLightTheme();
else if (!theme && !userPerfersDark) changeToDarkTheme();
}
})