blob: dea9bec285aceb0d403f6395da0d77b8a2861ccc (
plain)
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
|
(function () {
const hide = (triggers) => {
for (let i = 0; i < triggers.length; i++) {
triggers[i].checked = false;
}
};
const hideIfClickedOutside = (menus, triggers, event) => {
for (let i = 0; i < menus.length; i++) {
const active = triggers[i].checked === true;
const outside = !menus[i].contains(event.target);
if (outside && active) hide(triggers);
}
};
self.addEventListener("scroll", function () {
const triggers = document.querySelectorAll("micro-metadata-menu input");
hide(triggers);
});
["click", "touchstart"].forEach(function (event) {
self.addEventListener(event, function (event) {
const menus = document.querySelectorAll("micro-metadata-menu");
const triggers = document.querySelectorAll("micro-metadata-menu input");
hideIfClickedOutside(menus, triggers, event);
});
});
})();
|