diff --git a/src/_includes/expansion-list.html b/src/_includes/expansion-list.html index e6a2af759b..9b28b86d34 100644 --- a/src/_includes/expansion-list.html +++ b/src/_includes/expansion-list.html @@ -23,6 +23,7 @@
diff --git a/src/_sass/components/_expansion-list.scss b/src/_sass/components/_expansion-list.scss index 097a08b7ab..35ee09acc8 100644 --- a/src/_sass/components/_expansion-list.scss +++ b/src/_sass/components/_expansion-list.scss @@ -112,6 +112,7 @@ } .expansion-panel-body { + display: none; margin: auto; width: 90%; border-top: .05rem solid rgba(0, 0, 0, 0.125); @@ -125,6 +126,10 @@ margin-top: 1.5rem; border-top: .05rem solid rgba(0, 0, 0, 0.125); } + + &.show { + display: block; + } } > :last-child { diff --git a/src/_sass/components/_sidebar.scss b/src/_sass/components/_sidebar.scss index 650ed94959..b2607a9a17 100644 --- a/src/_sass/components/_sidebar.scss +++ b/src/_sass/components/_sidebar.scss @@ -120,6 +120,10 @@ + ul { display: none; + + &.show { + display: block; + } } &:hover { @@ -134,10 +138,6 @@ .expander { transform: rotate(180deg); } - - + ul { - display: block; - } } &.active { diff --git a/src/content/assets/js/main.js b/src/content/assets/js/main.js index 9fb4b6c5b1..a9f6b2d096 100644 --- a/src/content/assets/js/main.js +++ b/src/content/assets/js/main.js @@ -17,12 +17,29 @@ function setupSidenavInteractivity() { } } }); +} - // Set up collapse and expand for sidenav buttons. - const toggles = document.querySelectorAll('.nav-link.collapsible'); +function setupCollapsibleElements() { + const toggles = document.querySelectorAll('[data-toggle="collapse"]'); toggles.forEach(function (toggle) { + const targetSelector = toggle.getAttribute('data-target'); + if (!targetSelector) return; + const target = document.querySelector(targetSelector); + if (!target) return; + toggle.addEventListener('click', (e) => { - toggle.classList.toggle('collapsed'); + if (toggle.classList.contains('collapsed')) { + toggle.classList.remove('collapsed'); + toggle.ariaExpanded = 'true'; + + target.classList.add('show'); + } else { + toggle.classList.add('collapsed'); + toggle.ariaExpanded = 'false'; + + target.classList.remove('show'); + } + e.preventDefault(); }); }); @@ -433,6 +450,7 @@ function setupSite() { setupToc(); setupPlatformKeys(); + setupCollapsibleElements(); setupFeedback(); }