-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathtutorial.js
More file actions
70 lines (65 loc) · 2.29 KB
/
tutorial.js
File metadata and controls
70 lines (65 loc) · 2.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
document.addEventListener("DOMContentLoaded", () => {
const sidebar = document.querySelector(".sidebar");
const sidebarClose = document.querySelector("#sidebar-close");
const menuItems = document.querySelectorAll(".submenu-item");
const subMenuTitles = document.querySelectorAll(".submenu .menu-title");
const sidebarLinks = document.querySelectorAll(".sidebar a");
const submenuLinks = document.querySelectorAll(".submenu .item a");
// Toggle sidebar
sidebarClose.addEventListener("click", () => {
console.log("Sidebar toggle clicked");
sidebar.classList.toggle("close");
document.querySelector(".main").classList.toggle("full-width");
document.querySelector(".navbar").classList.toggle("full-width");
});
// Open submenu
menuItems.forEach((item, index) => {
item.addEventListener("click", () => {
console.log("Submenu item clicked", index);
item.classList.toggle("show-submenu");
const submenu = item.querySelector('.submenu');
if (submenu) {
submenu.classList.toggle("show");
}
});
});
// Close submenu
subMenuTitles.forEach((title) => {
title.addEventListener("click", () => {
console.log("Submenu title clicked");
const submenuItem = title.closest('.submenu-item');
if (submenuItem) {
submenuItem.classList.remove("show-submenu");
const submenu = submenuItem.querySelector('.submenu');
if (submenu) {
submenu.classList.remove("show");
}
}
});
});
// Ensure all links within the sidebar and submenu are clickable
sidebarLinks.forEach((link) => {
link.addEventListener("click", (e) => {
console.log("Sidebar link clicked", link.href);
if (sidebar.classList.contains("close")) {
e.preventDefault();
sidebar.classList.remove("close");
setTimeout(() => {
window.location.href = link.href;
}, 300);
}
});
});
submenuLinks.forEach((submenuLink) => {
submenuLink.addEventListener("click", (e) => {
console.log("Submenu link clicked", submenuLink.href);
if (sidebar.classList.contains("close")) {
e.preventDefault();
sidebar.classList.remove("close");
setTimeout(() => {
window.location.href = submenuLink.href;
}, 300);
}
});
});
});