mirror of
https://github.com/zadam/trilium.git
synced 2025-12-22 08:09:55 +01:00
Add 'packages/share-theme/' from commit '2cdd2a0a543f0bced8284ca55bc94efadbc7c91f'
git-subtree-dir: packages/share-theme git-subtree-mainline:d8f0709bcegit-subtree-split:2cdd2a0a54
This commit is contained in:
27
packages/share-theme/src/scripts/modules/expanders.ts
Normal file
27
packages/share-theme/src/scripts/modules/expanders.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
// In case a linked article lead to a new tree
|
||||
// const activeLink = document.querySelector("#menu a.active");
|
||||
// if (activeLink) {
|
||||
// let parent = activeLink.parentElement;
|
||||
// const mainMenu = document.getElementById("#menu");
|
||||
// while (parent && parent !== mainMenu) {
|
||||
// if (parent.matches(".submenu-item") && !parent.classList.contains("expanded")) {
|
||||
// parent.classList.add("expanded");
|
||||
// }
|
||||
// parent = parent.parentElement;
|
||||
// }
|
||||
// }
|
||||
|
||||
export default function setupExpanders() {
|
||||
const expanders = Array.from(document.querySelectorAll("#menu .submenu-item"));
|
||||
for (const ex of expanders) {
|
||||
ex.addEventListener("click", e => {
|
||||
if ((e.target as Element).closest(".submenu-item,.item") !== ex) return;
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
const ul = ex.querySelector("ul")!;
|
||||
ul.style.height = `${ul.scrollHeight}px`;
|
||||
setTimeout(() => ex.classList.toggle("expanded"), 1);
|
||||
setTimeout(() => ul.style.height = ``, 200);
|
||||
});
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user