mirror of
https://github.com/simonw/datasette.git
synced 2025-12-10 16:51:24 +01:00
Close menu when clicked outside, refs #981
This commit is contained in:
parent
0f2626868b
commit
765e8f0209
1 changed files with 12 additions and 1 deletions
|
|
@ -44,8 +44,19 @@ var DROPDOWN_ICON_SVG = `<svg xmlns="http://www.w3.org/2000/svg" width="14" heig
|
|||
function isFacetedBy(column) {
|
||||
return getParams().getAll('_facet').includes(column);
|
||||
}
|
||||
document.body.addEventListener('click', (ev) => {
|
||||
/* was this click outside the menu? */
|
||||
var target = ev.target;
|
||||
while (target && target != menu) {
|
||||
target = target.parentNode;
|
||||
}
|
||||
if (!target) {
|
||||
menu.style.display = 'none';
|
||||
}
|
||||
});
|
||||
function iconClicked(ev) {
|
||||
ev.preventDefault();
|
||||
ev.stopPropagation();
|
||||
var th = ev.target;
|
||||
while (th.nodeName != 'TH') {
|
||||
th = th.parentNode;
|
||||
|
|
@ -91,9 +102,9 @@ var DROPDOWN_ICON_SVG = `<svg xmlns="http://www.w3.org/2000/svg" width="14" heig
|
|||
svg.style.top = '1px';
|
||||
var menu = document.createElement('div');
|
||||
menu.innerHTML = DROPDOWN_HTML;
|
||||
menu = menu.querySelector('*');
|
||||
menu.style.position = 'absolute';
|
||||
menu.style.display = 'none';
|
||||
menu = menu.querySelector('*');
|
||||
document.body.appendChild(menu);
|
||||
|
||||
var ths = Array.from(document.querySelectorAll('.rows-and-columns th'));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue