From 285c0e9768db8db79a7262cbd5aafb186ab8ca8c Mon Sep 17 00:00:00 2001
From: catcodeme <1020082805@qq.com>
Date: Tue, 03 Dec 2024 06:50:50 +0000
Subject: [PATCH] docs(showcase): 8cat.life (#1617)
---
quartz/components/scripts/explorer.inline.ts | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/quartz/components/scripts/explorer.inline.ts b/quartz/components/scripts/explorer.inline.ts
index 12546bb..33d328a 100644
--- a/quartz/components/scripts/explorer.inline.ts
+++ b/quartz/components/scripts/explorer.inline.ts
@@ -17,11 +17,14 @@
function toggleExplorer(this: HTMLElement) {
this.classList.toggle("collapsed")
+ this.setAttribute(
+ "aria-expanded",
+ this.getAttribute("aria-expanded") === "true" ? "false" : "true",
+ )
const content = this.nextElementSibling as MaybeHTMLElement
if (!content) return
content.classList.toggle("collapsed")
- content.style.maxHeight = content.style.maxHeight === "0px" ? content.scrollHeight + "px" : "0px"
}
function toggleFolder(evt: MouseEvent) {
@@ -57,20 +60,20 @@
for (const item of document.getElementsByClassName(
"folder-button",
) as HTMLCollectionOf<HTMLElement>) {
- item.removeEventListener("click", toggleFolder)
item.addEventListener("click", toggleFolder)
+ window.addCleanup(() => item.removeEventListener("click", toggleFolder))
}
}
- explorer.removeEventListener("click", toggleExplorer)
explorer.addEventListener("click", toggleExplorer)
+ window.addCleanup(() => explorer.removeEventListener("click", toggleExplorer))
// Set up click handlers for each folder (click handler on folder "icon")
for (const item of document.getElementsByClassName(
"folder-icon",
) as HTMLCollectionOf<HTMLElement>) {
- item.removeEventListener("click", toggleFolder)
item.addEventListener("click", toggleFolder)
+ window.addCleanup(() => item.removeEventListener("click", toggleFolder))
}
// Get folder state from local storage
--
Gitblit v1.10.0