37 lines
No EOL
1.3 KiB
HTML
37 lines
No EOL
1.3 KiB
HTML
<script>
|
|
// Global ToC
|
|
/*
|
|
- Deploy current submenu (if any) and reploy others.
|
|
- Fixed ToC when user scrolls.
|
|
*/
|
|
|
|
document.addEventListener("DOMContentLoaded", function() {
|
|
var menusTriggers = document.getElementsByClassName("deploySubMenu");
|
|
var activeDocPage = document.getElementsByClassName("activePage")[0];
|
|
for (var i = 0; i < menusTriggers.length; i++) {
|
|
menusTriggers[i].checked = true;
|
|
}
|
|
let parentMenu = activeDocPage.parentElement.parentElement;
|
|
// Check if current page is the parent submenu page or just a child
|
|
if (parentMenu.classList.contains('subMenu')) { // child
|
|
parentMenu.previousElementSibling.previousElementSibling.checked = false;
|
|
} else { // parent
|
|
if (activeDocPage.nextElementSibling) {
|
|
activeDocPage.nextElementSibling.checked = false;
|
|
}
|
|
}
|
|
});
|
|
|
|
window.addEventListener('scroll', function() {
|
|
if (document.body.clientWidth >= 1280) {
|
|
if (window.scrollY >= menuBarHeight) {
|
|
document.getElementById('main-toc-menu').classList.add('fixed', 'top-0', 'left-0');
|
|
document.getElementById('main-toc-menu').style.width = mainTocMenuWidth + 'px';
|
|
} else {
|
|
document.getElementById('main-toc-menu').classList.remove('fixed', 'top-0', 'left-0');
|
|
}
|
|
} else {
|
|
|
|
}
|
|
});
|
|
</script> |