Skip to content

Commit 6cc052d

Browse files
committed
add sidebar effect
1 parent eee85e6 commit 6cc052d

File tree

1 file changed

+16
-46
lines changed

1 file changed

+16
-46
lines changed

assets/js/documentation.js

Lines changed: 16 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -133,60 +133,35 @@ function addSidebarToggleButton() {
133133
// Check if the element exists
134134
if (docsRight) {
135135

136-
// check if the button already exists
137-
var button = document.getElementById('documenter-article-toggle-button-sidebar');
138-
if (!(button)) {
139-
140-
// Create the new button element
141-
var button = document.createElement('a');
142-
button.className = 'docs-article-toggle-button-sidebar fa-solid';
143-
button.id = 'documenter-article-toggle-button-sidebar';
144-
button.href = 'javascript:;';
145-
button.title = 'Fold sidebar';
146-
147-
// Insert the button as the first child of the docs-right element
148-
docsRight.insertBefore(button, docsRight.firstChild);
149-
150-
// Event listener
151-
button.addEventListener('click', function () {
152-
toggleSidebarButton(this);
153-
});
154-
136+
var buttonSidebar = document.getElementById('documenter-sidebar-button');
137+
if (buttonSidebar) {
138+
buttonSidebar.addEventListener('click', toggleSidebarButton);
155139
}
156-
157-
// Check localStorage for button status
140+
158141
var buttonStatus = localStorage.getItem('sidebarButtonStatus');
159-
160-
// Set the button class based on the stored status
161-
if (buttonStatus === 'right') {
162-
button.classList.remove('fa-chevron-left');
163-
button.classList.add('fa-chevron-right');
164-
hideSidebar(button)
142+
if (buttonStatus === 'show') {
143+
showSidebar()
165144
} else {
166-
button.classList.remove('fa-chevron-right');
167-
button.classList.add('fa-chevron-left'); // Default to left
168-
showSidebar(button)
145+
hideSidebar()
169146
}
170147

171148
}
172149
}
173150

174-
function toggleSidebarButton(button) {
151+
function toggleSidebarButton() {
175152

176-
if (button.classList.contains('fa-chevron-left')) {
177-
hideSidebar(button)
153+
var buttonStatus = localStorage.getItem('sidebarButtonStatus');
154+
if (buttonStatus === 'show') {
155+
hideSidebar()
156+
localStorage.setItem('sidebarButtonStatus', 'hide');
178157
} else {
179-
showSidebar(button)
158+
showSidebar()
159+
localStorage.setItem('sidebarButtonStatus', 'show');
180160
}
181161

182162
}
183163

184-
function hideSidebar(button) {
185-
186-
button.classList.remove('fa-chevron-left');
187-
button.classList.add('fa-chevron-right');
188-
189-
localStorage.setItem('sidebarButtonStatus', 'right');
164+
function hideSidebar() {
190165

191166
var sidebar = document.querySelector('.docs-sidebar');
192167
if (sidebar) {
@@ -200,12 +175,7 @@ function hideSidebar(button) {
200175

201176
}
202177

203-
function showSidebar(button) {
204-
205-
button.classList.remove('fa-chevron-right');
206-
button.classList.add('fa-chevron-left');
207-
208-
localStorage.setItem('sidebarButtonStatus', 'left');
178+
function showSidebar() {
209179

210180
var sidebar = document.querySelector('.docs-sidebar');
211181
if (sidebar) {

0 commit comments

Comments
 (0)