mirror of
https://github.com/kevinveenbirkenbach/homepage.veen.world.git
synced 2025-09-10 11:47:10 +02:00
Implemented hover submenüs
This commit is contained in:
@@ -1,21 +0,0 @@
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
const dropdownSubmenus = document.querySelectorAll('.dropdown-submenu > .dropdown-item');
|
||||
|
||||
dropdownSubmenus.forEach((submenu) => {
|
||||
submenu.addEventListener('click', (event) => {
|
||||
event.preventDefault();
|
||||
const targetMenu = document.querySelector(submenu.getAttribute('data-bs-target'));
|
||||
const allSubmenus = document.querySelectorAll('.dropdown-menu.collapse');
|
||||
|
||||
// Schließe alle anderen Submenüs
|
||||
allSubmenus.forEach((menu) => {
|
||||
if (menu !== targetMenu) {
|
||||
menu.classList.remove('show');
|
||||
}
|
||||
});
|
||||
|
||||
// Toggle des aktuellen Submenüs
|
||||
targetMenu.classList.toggle('show');
|
||||
});
|
||||
});
|
||||
});
|
28
app/static/js/submenus.js
Normal file
28
app/static/js/submenus.js
Normal file
@@ -0,0 +1,28 @@
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
const dropdownSubmenus = document.querySelectorAll('.dropdown-submenu');
|
||||
|
||||
dropdownSubmenus.forEach(submenu => {
|
||||
let timeout;
|
||||
|
||||
// Zeige das Submenü beim Hover
|
||||
submenu.addEventListener('mouseenter', () => {
|
||||
clearTimeout(timeout);
|
||||
const menu = submenu.querySelector('.dropdown-menu');
|
||||
if (menu) {
|
||||
menu.style.display = 'block';
|
||||
menu.style.opacity = '1';
|
||||
}
|
||||
});
|
||||
|
||||
// Verstecke das Submenü nach 0.5 Sekunden
|
||||
submenu.addEventListener('mouseleave', () => {
|
||||
const menu = submenu.querySelector('.dropdown-menu');
|
||||
if (menu) {
|
||||
timeout = setTimeout(() => {
|
||||
menu.style.display = 'none';
|
||||
menu.style.opacity = '0';
|
||||
}, 500); // 0.5 Sekunden Verzögerung
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
Reference in New Issue
Block a user