diff --git a/index.d.ts b/index.d.ts index 9011ee38f..1dc0e2f82 100644 --- a/index.d.ts +++ b/index.d.ts @@ -9,6 +9,7 @@ interface CustomEventMap { nav: CustomEvent<{ url: FullSlug }> themechange: CustomEvent<{ theme: "light" | "dark" }> readermodechange: CustomEvent<{ mode: "on" | "off" }> + render: CustomEvent<{}> } type ContentIndex = Record diff --git a/quartz/components/scripts/popover.inline.ts b/quartz/components/scripts/popover.inline.ts index 989af7ee8..f2d311dc7 100644 --- a/quartz/components/scripts/popover.inline.ts +++ b/quartz/components/scripts/popover.inline.ts @@ -120,7 +120,7 @@ function clearActivePopover() { allPopoverElements.forEach((popoverElement) => popoverElement.classList.remove("active-popover")) } -document.addEventListener("nav", () => { +function setupPopovers() { const links = [...document.querySelectorAll("a.internal")] as HTMLAnchorElement[] for (const link of links) { link.addEventListener("mouseenter", mouseEnterHandler) @@ -130,4 +130,7 @@ document.addEventListener("nav", () => { link.removeEventListener("mouseleave", clearActivePopover) }) } -}) +} + +document.addEventListener("nav", setupPopovers) +document.addEventListener("render", setupPopovers)