summaryrefslogtreecommitdiff
path: root/assets/js
diff options
context:
space:
mode:
authoreltrac <hi@eltr.ac>2026-02-10 13:40:03 +0800
committereltrac <hi@eltr.ac>2026-02-10 13:40:03 +0800
commit1b844f1230a03983bf027a321eb77bb908f469ea (patch)
tree8b30244506bb0a3ddb1a62376555a6b26ff24ae4 /assets/js
parent81b562797338f1e6eb15835deacc652c049ac49e (diff)
refactor: use custom render hook
- remove inject-footnotes.js, use a partial that receives `.Content` and does the injection statically - use a `utils/render` partial, as custom "render hook" - reuse `content` partial for all pages
Diffstat (limited to 'assets/js')
-rw-r--r--assets/js/inject-footnotes.js36
1 files changed, 0 insertions, 36 deletions
diff --git a/assets/js/inject-footnotes.js b/assets/js/inject-footnotes.js
deleted file mode 100644
index 20086ea6..00000000
--- a/assets/js/inject-footnotes.js
+++ /dev/null
@@ -1,36 +0,0 @@
-document.addEventListener("DOMContentLoaded", () => {
- const refs = Array.from(document.querySelectorAll("sup[id^='fnref']"));
- // reverse traversal, to keep injected footnotes in order
- for (let i = refs.length - 1; i >= 0; i--) {
- const ref = refs[i];
-
- const noteNumber = i + 1;
- const noteId = ref.id.replace("fnref", "fn");
- const note = document.getElementById(noteId);
-
- if (note) {
- // construct note element
- const inline = document.createElement("div");
- inline.className = "text-sm text-secondary flex gap-2 ml-4";
-
- const footnoteNumber = document.createElement('span')
- footnoteNumber.textContent = noteNumber;
- const footnoteContent = document.createElement('div');
- footnoteContent.innerHTML = note.innerHTML;
-
- inline.appendChild(footnoteNumber);
- inline.appendChild(footnoteContent);
- inline.id = noteId;
-
- // insert adjacent to paragraph
- // if it's inside a table, then insert outside the table
- if (ref.closest('table')) {
- ref.closest('table').insertAdjacentElement("afterend", inline);
- } else {
- ref.parentNode.insertAdjacentElement("afterend", inline);
- }
- }
- }
- // remove original footnotes
- document.getElementsByClassName("footnotes")[0]?.remove()
-});