Spaces:
Sleeping
Sleeping
Commit ·
0ad0509
1
Parent(s): d4d61b7
Fix mobile navigation: visible toggle, overlay, and correct sidebar behavior
Browse files- frontend/index.html +0 -1
- frontend/main.js +18 -0
frontend/index.html
CHANGED
|
@@ -12,7 +12,6 @@
|
|
| 12 |
<aside class="sidebar">
|
| 13 |
<div class="sidebar-header">
|
| 14 |
<h2>AutoML</h2>
|
| 15 |
-
<button id="sidebar-toggle"><i class="fas fa-bars"></i></button>
|
| 16 |
</div>
|
| 17 |
<nav class="sidebar-nav">
|
| 18 |
<a href="#" class="nav-link active" data-page="load-dataset"><i class="fas fa-upload"></i><span class="nav-text">Load Dataset</span></a>
|
|
|
|
| 12 |
<aside class="sidebar">
|
| 13 |
<div class="sidebar-header">
|
| 14 |
<h2>AutoML</h2>
|
|
|
|
| 15 |
</div>
|
| 16 |
<nav class="sidebar-nav">
|
| 17 |
<a href="#" class="nav-link active" data-page="load-dataset"><i class="fas fa-upload"></i><span class="nav-text">Load Dataset</span></a>
|
frontend/main.js
CHANGED
|
@@ -37,6 +37,9 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
| 37 |
if (isMobileView()) {
|
| 38 |
sidebar.classList.remove('active');
|
| 39 |
overlay.classList.remove('active');
|
|
|
|
|
|
|
|
|
|
| 40 |
}
|
| 41 |
});
|
| 42 |
});
|
|
@@ -53,12 +56,16 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
| 53 |
sidebar.classList.remove('active'); // Start hidden on mobile
|
| 54 |
overlay.classList.remove('active');
|
| 55 |
mainContent.classList.remove('collapsed'); // Main content always full width on mobile
|
|
|
|
|
|
|
| 56 |
} else {
|
| 57 |
// Desktop default state
|
| 58 |
sidebar.classList.remove('collapsed');
|
| 59 |
sidebar.classList.remove('active'); // Ensure mobile active state is removed
|
| 60 |
overlay.classList.remove('active');
|
| 61 |
mainContent.classList.remove('collapsed');
|
|
|
|
|
|
|
| 62 |
}
|
| 63 |
}
|
| 64 |
|
|
@@ -80,6 +87,14 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
| 80 |
if (isMobileView()) {
|
| 81 |
sidebar.classList.toggle('active');
|
| 82 |
overlay.classList.toggle('active');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 83 |
}
|
| 84 |
});
|
| 85 |
|
|
@@ -88,6 +103,9 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
| 88 |
if (isMobileView() && sidebar.classList.contains('active')) {
|
| 89 |
sidebar.classList.remove('active');
|
| 90 |
overlay.classList.remove('active');
|
|
|
|
|
|
|
|
|
|
| 91 |
}
|
| 92 |
});
|
| 93 |
|
|
|
|
| 37 |
if (isMobileView()) {
|
| 38 |
sidebar.classList.remove('active');
|
| 39 |
overlay.classList.remove('active');
|
| 40 |
+
// Change icon back to bars when sidebar closes
|
| 41 |
+
mobileSidebarToggle.querySelector('i').classList.remove('fa-times');
|
| 42 |
+
mobileSidebarToggle.querySelector('i').classList.add('fa-bars');
|
| 43 |
}
|
| 44 |
});
|
| 45 |
});
|
|
|
|
| 56 |
sidebar.classList.remove('active'); // Start hidden on mobile
|
| 57 |
overlay.classList.remove('active');
|
| 58 |
mainContent.classList.remove('collapsed'); // Main content always full width on mobile
|
| 59 |
+
mobileSidebarToggle.style.display = 'flex'; // Ensure mobile toggle is visible
|
| 60 |
+
desktopSidebarToggle.style.display = 'none'; // Hide desktop toggle
|
| 61 |
} else {
|
| 62 |
// Desktop default state
|
| 63 |
sidebar.classList.remove('collapsed');
|
| 64 |
sidebar.classList.remove('active'); // Ensure mobile active state is removed
|
| 65 |
overlay.classList.remove('active');
|
| 66 |
mainContent.classList.remove('collapsed');
|
| 67 |
+
mobileSidebarToggle.style.display = 'none'; // Hide mobile toggle
|
| 68 |
+
desktopSidebarToggle.style.display = 'block'; // Show desktop toggle
|
| 69 |
}
|
| 70 |
}
|
| 71 |
|
|
|
|
| 87 |
if (isMobileView()) {
|
| 88 |
sidebar.classList.toggle('active');
|
| 89 |
overlay.classList.toggle('active');
|
| 90 |
+
// Change icon based on sidebar state
|
| 91 |
+
if (sidebar.classList.contains('active')) {
|
| 92 |
+
mobileSidebarToggle.querySelector('i').classList.remove('fa-bars');
|
| 93 |
+
mobileSidebarToggle.querySelector('i').classList.add('fa-times');
|
| 94 |
+
} else {
|
| 95 |
+
mobileSidebarToggle.querySelector('i').classList.remove('fa-times');
|
| 96 |
+
mobileSidebarToggle.querySelector('i').classList.add('fa-bars');
|
| 97 |
+
}
|
| 98 |
}
|
| 99 |
});
|
| 100 |
|
|
|
|
| 103 |
if (isMobileView() && sidebar.classList.contains('active')) {
|
| 104 |
sidebar.classList.remove('active');
|
| 105 |
overlay.classList.remove('active');
|
| 106 |
+
// Change icon back to bars when sidebar closes
|
| 107 |
+
mobileSidebarToggle.querySelector('i').classList.remove('fa-times');
|
| 108 |
+
mobileSidebarToggle.querySelector('i').classList.add('fa-bars');
|
| 109 |
}
|
| 110 |
});
|
| 111 |
|