Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/zzossig/hugo-theme-zdoc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'layouts/partials/script/single-script.html')
-rw-r--r--layouts/partials/script/single-script.html55
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 }}