docs: scroll navigation to current active section
Add a custom JavaScript file to all HTML rendered docs output. For now it only hosts a small code snipped which gets the current active section link and bring it into view. Needs to be triggered after DOM is initially loaded (which is still before *all* resources like images, iframes, ... are necessarily loaded), else the query cannot work. Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
parent
f5c6a2c956
commit
8a40e22691
|
@ -80,7 +80,7 @@ onlinehelpinfo:
|
|||
.PHONY: html
|
||||
html: ${GENERATED_SYNOPSIS} images/proxmox-logo.svg custom.css conf.py ${PRUNE_SIMULATOR_FILES}
|
||||
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
|
||||
install -m 0644 custom.css images/proxmox-logo.svg $(BUILDDIR)/html/_static/
|
||||
install -m 0644 custom.js custom.css images/proxmox-logo.svg $(BUILDDIR)/html/_static/
|
||||
install -dm 0755 $(BUILDDIR)/html/prune-simulator
|
||||
install -m 0644 ${PRUNE_SIMULATOR_FILES} $(BUILDDIR)/html/prune-simulator
|
||||
@echo
|
||||
|
|
|
@ -229,6 +229,10 @@ html_favicon = 'images/favicon.ico'
|
|||
# so a file named "default.css" will overwrite the builtin "default.css".
|
||||
html_static_path = ['_static']
|
||||
|
||||
html_js_files = [
|
||||
'custom.js',
|
||||
]
|
||||
|
||||
# Add any extra paths that contain custom files (such as robots.txt or
|
||||
# .htaccess) here, relative to this directory. These files are copied
|
||||
# directly to the root of the documentation.
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
window.addEventListener('DOMContentLoaded', (event) => {
|
||||
let activeSection = document.querySelector("a.current");
|
||||
if (activeSection) {
|
||||
// https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView
|
||||
activeSection.scrollIntoView({ block: 'center' });
|
||||
}
|
||||
});
|
Loading…
Reference in New Issue