@krishna2142/dynamic-user-interface
Version:
my first npm package publish
19 lines (14 loc) • 565 B
JavaScript
document.addEventListener("click", e => {
const isDropdownButton = e.target.matches('[data-dropdown-button]')
if (!isDropdownButton && e.target.closest('[data-dropdown]') != null) return
let currentDropdown
if (isDropdownButton) {
currentDropdown = e.target.closest('[data-dropdown]')
currentDropdown.classList.toggle('active')
}
document.querySelectorAll('[data-dropdown].active').forEach(dropdown => {
if (dropdown === currentDropdown) return
dropdown.classList.remove('active')
})
})
module.export