diff options
Diffstat (limited to 'layouts/partials/script/single-script.html')
-rw-r--r-- | layouts/partials/script/single-script.html | 55 |
1 files changed, 54 insertions, 1 deletions
diff --git a/layouts/partials/script/single-script.html b/layouts/partials/script/single-script.html index 8a79b74..a579a8e 100644 --- a/layouts/partials/script/single-script.html +++ b/layouts/partials/script/single-script.html @@ -67,10 +67,63 @@ {{ if in .Params.Libraries "chart" }} <script defer src="{{ $js.chart.url }}" integrity="{{ $js.chart.sri }}" crossorigin="anonymous"></script> {{ end }} - <script> document.addEventListener('DOMContentLoaded', function () { 'use strict'; + + // ====================== toc visibility ========================= + var toggleSidebarElem = document.getElementById("toggle-sidebar"); + var tocBodyElem = document.querySelector('.toc__body'); + var tocLabelElem = document.querySelector('.toc__label'); + var listMainElem = document.getElementById('list-main'); + var listSideElem = document.getElementById('list-side'); + var sliderIcons = document.querySelectorAll('.slider__icon'); + + toggleSidebarElem ? + toggleSidebarElem.addEventListener('change', function (e) { + if (e.target.checked) { + if (tocBodyElem) { + fadeIn(tocBodyElem, 200); + } + if (tocLabelElem) { + fadeIn(tocLabelElem, 200); + } + if (listMainElem && listSideElem) { + listMainElem.className = 'm'; + listSideElem.className = 'r'; + } + + sliderIcons && sliderIcons.forEach(function(elem) { + if (elem.classList.contains('hide')) { + elem.classList.remove('hide'); + } else { + elem.classList.add('hide'); + } + }); + + } else { + if (tocBodyElem) { + fadeOut(tocBodyElem, 200); + } + if (tocLabelElem) { + fadeOut(tocLabelElem, 200); + } + if (listMainElem && listSideElem) { + listMainElem.className = 'mr'; + listSideElem.className = 'hide'; + } + + sliderIcons && sliderIcons.forEach(function (elem) { + if (elem.classList.contains('hide')) { + elem.classList.remove('hide'); + } else { + elem.classList.add('hide'); + } + }); + } + }) : null; + // ================================================================= + // ============================ mermaid ============================ {{ $lib := .Params.libraries }} |