v0.1.18 카테고리 아코디언 동작 수정

This commit is contained in:
2026-04-14 10:02:45 +09:00
parent 033ac60ac2
commit bc853049b5
7 changed files with 139 additions and 17 deletions

View File

@@ -48,14 +48,32 @@
}
}
document.querySelectorAll(".menu-group").forEach(function (section) {
function initializeAccordion(section, open) {
var content = section.querySelector("[data-accordion-content]");
if (!content) {
return;
}
section.classList.toggle("is-open", open);
content.style.overflow = "hidden";
content.style.height = section.classList.contains("is-open") ? "auto" : "0px";
content.style.height = open ? "auto" : "0px";
var button = section.querySelector("[data-accordion]");
if (button) {
button.setAttribute("aria-expanded", open ? "true" : "false");
}
}
document.querySelectorAll("[data-accordion-content]").forEach(function (content) {
var section = content.parentElement;
if (!section) {
return;
}
var isCategorySection = section.hasAttribute("data-sidebar-categories");
var shouldOpen = isCategorySection ? window.innerWidth >= 1024 : section.classList.contains("is-open");
initializeAccordion(section, shouldOpen);
});
document.querySelectorAll("[data-accordion]").forEach(function (button) {
@@ -65,6 +83,14 @@
});
});
function syncResponsiveAccordions() {
document.querySelectorAll("[data-sidebar-categories]").forEach(function (section) {
syncAccordion(section, window.innerWidth >= 1024);
});
}
window.addEventListener("resize", syncResponsiveAccordions);
var leftSidebarToggle = document.querySelector("[data-left-sidebar-toggle]");
var leftSidebarBackdrop = document.querySelector("[data-left-sidebar-backdrop]");
var tabletMedia = window.matchMedia("(max-width: 1023px)");