From 01b52eaa956b2e376139acd51f903fc2d13dfcde Mon Sep 17 00:00:00 2001 From: "Jeffrey N." Date: Tue, 31 Dec 2024 00:55:30 -0500 Subject: [PATCH] UX Improvements: Close TOC when navigating. --- assets/book-header.js | 18 ++++++++++++++++++ layouts/_default/baseof.html | 7 +++++++ 2 files changed, 25 insertions(+) create mode 100644 assets/book-header.js diff --git a/assets/book-header.js b/assets/book-header.js new file mode 100644 index 0000000..fd3eee5 --- /dev/null +++ b/assets/book-header.js @@ -0,0 +1,18 @@ +(function () { + let tocLinks = document.querySelectorAll("#TableOfContents li"); + let tocInput = document.getElementById("toc-control"); + tocLinks.forEach(l => + l.addEventListener("click", + () => tocInput.checked = false)); +})(); +(function () { + let menuLabel = document.querySelector("label[for='menu-control']"); + let menuInput = document.getElementById("menu-control"); + let tocInput = document.getElementById("toc-control"); + menuLabel.addEventListener("click", + function () { + if (!menuInput.checked) { + tocInput.checked = false; + } + }); +})(); diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html index a6c4c07..15f8390 100644 --- a/layouts/_default/baseof.html +++ b/layouts/_default/baseof.html @@ -21,6 +21,13 @@ {{ partial "docs/inject/content-before" . }} {{ template "main" . }} + + + {{ $script := resources.Get "book-header.js" | resources.Minify }} + {{ with $script.Content }} + + {{ end }} + {{ partial "docs/inject/content-after" . }}