aboutsummaryrefslogblamecommitdiff
path: root/templates/partials/doc/global_toc_script.html
blob: 8b23fecec1c57b7eab64ac10593588dfdf090455 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

















                                                                                 



                                                             














                                                                                                  
<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>