diff options
author | johannst <johannst@users.noreply.github.com> | 2023-07-21 18:14:59 +0000 |
---|---|---|
committer | johannst <johannst@users.noreply.github.com> | 2023-07-21 18:14:59 +0000 |
commit | c4435063f699569dd1688966c20748f61d56683c (patch) | |
tree | 89c2710f5548b626817f00f6d8799b4ca76944d2 /web/index.html | |
parent | 1b251a08f8c10ff292d1ca9b1c580e88df483b94 (diff) | |
download | notes-c4435063f699569dd1688966c20748f61d56683c.tar.gz notes-c4435063f699569dd1688966c20748f61d56683c.zip |
deploy: a311d67451eb4734684f314f1b56021da86459a0
Diffstat (limited to 'web/index.html')
-rw-r--r-- | web/index.html | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/web/index.html b/web/index.html index 1ae3854..32879c9 100644 --- a/web/index.html +++ b/web/index.html @@ -88,11 +88,33 @@ <div id="sidebar-resize-handle" class="sidebar-resize-handle"></div> </nav> + <!-- Track and set sidebar scroll position --> + <script> + var sidebarScrollbox = document.querySelector('#sidebar .sidebar-scrollbox'); + sidebarScrollbox.addEventListener('click', function(e) { + if (e.target.tagName === 'A') { + sessionStorage.setItem('sidebar-scroll', sidebarScrollbox.scrollTop); + } + }, { passive: true }); + var sidebarScrollTop = sessionStorage.getItem('sidebar-scroll'); + sessionStorage.removeItem('sidebar-scroll'); + if (sidebarScrollTop) { + // preserve sidebar scroll position when navigating via links within sidebar + sidebarScrollbox.scrollTop = sidebarScrollTop; + } else { + // scroll sidebar to current active section when navigating via "next/previous chapter" buttons + var activeSection = document.querySelector('#sidebar .active'); + if (activeSection) { + activeSection.scrollIntoView({ block: 'center' }); + } + } + </script> + <div id="page-wrapper" class="page-wrapper"> <div class="page"> <div id="menu-bar-hover-placeholder"></div> - <div id="menu-bar" class="menu-bar sticky bordered"> + <div id="menu-bar" class="menu-bar sticky"> <div class="left-buttons"> <button id="sidebar-toggle" class="icon-button" type="button" title="Toggle Table of Contents" aria-label="Toggle Table of Contents" aria-controls="sidebar"> <i class="fa fa-bars"></i> |