From ee8c1dc96803fcd189d439080713b8a98616a40f Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Sat, 05 Apr 2025 18:38:50 +0000
Subject: [PATCH] chore(css): style tweaks for overflow

---
 quartz/components/scripts/popover.inline.ts |   14 +++++++-------
 1 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/quartz/components/scripts/popover.inline.ts b/quartz/components/scripts/popover.inline.ts
index d02b0b7..56d2c96 100644
--- a/quartz/components/scripts/popover.inline.ts
+++ b/quartz/components/scripts/popover.inline.ts
@@ -12,7 +12,7 @@
   clearActivePopover()
 
   const link = this
-  link.id = `backlink-${randomIdNonSecure()}`
+  const id = randomIdNonSecure()
   if (link.dataset.noPopover === "true") {
     return
   }
@@ -27,8 +27,8 @@
     })
   }
 
-  const prevPopoverElement = document.getElementById(`popover-${link.id.split("-")[1]}`)
-  const hasAlreadyBeenFetched = () => !!prevPopoverElement
+  const prevPopoverElement = document.getElementById(`popover-${id}`)
+  const hasAlreadyBeenFetched = () => !!document.getElementById(`popover-${id}`)
 
   // dont refetch if there's already a popover
   if (hasAlreadyBeenFetched()) {
@@ -91,7 +91,7 @@
       normalizeRelativeURLs(html, targetUrl)
       // prepend all IDs inside popovers to prevent duplicates
       html.querySelectorAll("[id]").forEach((el) => {
-        const targetID = `popover-${el.id}`
+        const targetID = `popover-internal-${el.id}`
         el.id = targetID
       })
       const elts = [...html.getElementsByClassName("popover-hint")]
@@ -101,12 +101,12 @@
   }
 
   setPosition(popoverElement)
-  popoverElement.id = `popover-${link.id.split("-")[1]}`
-  popoverElement?.classList.add("active-popover")
+  popoverElement.id = `popover-${id}`
+  popoverElement.classList.add("active-popover")
   document.body.appendChild(popoverElement)
 
   if (hash !== "") {
-    const targetAnchor = hash.startsWith("#popover") ? hash : `#popover-${hash.slice(1)}`
+    const targetAnchor = `#popover-internal-${hash.slice(1)}`
     const heading = popoverInner.querySelector(targetAnchor) as HTMLElement | null
     if (heading) {
       // leave ~12px of buffer when scrolling to a heading

--
Gitblit v1.10.0