aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorn-peugnet <n.peugnet@free.fr>2020-01-29 16:30:54 +0100
committern-peugnet <n.peugnet@free.fr>2020-01-29 16:30:54 +0100
commitbe3f6fce10815fa3ea9b7655eaf15f9d5c6e9192 (patch)
treef138e2cf1881d8c13bfaf6d17103d690e79f25fa /src
parent8be24ab190556a0402e62cc2a435bf24c182ce6e (diff)
downloadwcms-be3f6fce10815fa3ea9b7655eaf15f9d5c6e9192.tar.gz
wcms-be3f6fce10815fa3ea9b7655eaf15f9d5c6e9192.zip
feat: add js auto-closing submenu
Diffstat (limited to 'src')
-rw-r--r--src/home.js16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/home.js b/src/home.js
index 670ae3e..b00a782 100644
--- a/src/home.js
+++ b/src/home.js
@@ -11,6 +11,8 @@ window.addEventListener('load', () => {
checkall.appendChild(checkbox);
});
+window.addEventListener('click', clickHandler);
+
/**
* Manage input event on the checkall checkbox.
* @param {InputEvent} e the input event
@@ -26,3 +28,17 @@ function checkallHandler(e) {
}
}
}
+
+/**
+ * Manage click event on the home page.
+ * @param {MouseEvent} e
+ */
+function clickHandler(e) {
+ let details = document.querySelectorAll('details');
+ let currentDetail = e.target.closest('details');
+ for (const detail of details) {
+ if (!detail.isSameNode(currentDetail)) {
+ detail.removeAttribute('open');
+ }
+ }
+}