1
0
mirror of https://github.com/tabler/tabler.git synced 2025-12-26 11:16:12 +04:00

nested dropdowns

This commit is contained in:
codecalm
2020-11-06 12:59:28 +01:00
parent a9adb7452f
commit a7df03a57a
4 changed files with 31 additions and 2 deletions

28
src/js/dropdown.js Normal file
View File

@@ -0,0 +1,28 @@
// Nested dropdowns
const selectors = '.dropdown, .dropup, .dropright, .dropleft',
dropdowns = document.querySelectorAll(selectors);
let currentTarget = undefined;
dropdowns.forEach(dropdown => {
dropdown.addEventListener('mousedown', (e) => {
e.stopPropagation();
if (e.target.dataset.toggle && e.target.dataset.toggle === 'dropdown') {
currentTarget = e.currentTarget;
}
});
dropdown.addEventListener('hide.bs.dropdown', (e) => {
e.stopPropagation();
const parent = currentTarget ? currentTarget.parentElement.closest(selectors) : undefined;
if (parent && parent === dropdown) {
e.preventDefault();
}
currentTarget = undefined;
});
});

View File

@@ -2,6 +2,7 @@
import './autosize';
import './input-mask';
import './dropdown';
(function() {
/**

View File

@@ -455,7 +455,7 @@ $toast-border-color: $border-color !default;
$toast-header-color: $text-muted !default;
//progress
$progress-bg: $light-mix !default;
$progress-bg: $border-color !default;
$progress-height: .5rem !default;
//ribbons

View File

@@ -1,6 +1,6 @@
.legend {
display: inline-block;
background: $gray-300;
background: $border-color;
width: .75em;
height: .75em;
border-radius: $border-radius;