diff options
Diffstat (limited to 'themes/tabi-lean/static/js/footnoteBacklinks.js')
| -rw-r--r-- | themes/tabi-lean/static/js/footnoteBacklinks.js | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/themes/tabi-lean/static/js/footnoteBacklinks.js b/themes/tabi-lean/static/js/footnoteBacklinks.js deleted file mode 100644 index 8c20098..0000000 --- a/themes/tabi-lean/static/js/footnoteBacklinks.js +++ /dev/null @@ -1,33 +0,0 @@ -// Assign unique IDs to the footnote references based on their hashes. -function assignReferenceIds() { - const references = document.querySelectorAll('.footnote-reference'); - for (const ref of references) { - ref.id = `ref:${ref.children[0].hash.substring(1)}`; - } -} - -// Create backlinks for each footnote definition if a corresponding reference exists. -function createFootnoteBacklinks() { - const footnotes = document.querySelectorAll('.footnote-definition'); - for (const footnote of footnotes) { - const backlinkId = `ref:${footnote.id}`; - - // Skip if there's no corresponding reference in the text (i.e. the footnote doesn't reference anything). - if (!document.getElementById(backlinkId)) continue; - - const backlink = document.createElement('a'); - backlink.href = `#${backlinkId}`; - backlink.className = 'footnote-backlink'; - backlink.textContent = '↩'; - footnote.lastElementChild.appendChild(backlink); - } -} - -// Initialise the handlers for the footnote references and definitions. -function initFootnotes() { - assignReferenceIds(); - createFootnoteBacklinks(); -} - -// Wait for the window to load, then execute the main function. -window.addEventListener('load', initFootnotes); |
