Better CSS Selection?
Unanswered
Sun bear posted this in #help-forum
Sun bearOP
I am wondering if there is a better CSS or else Functionality to track if the dropdown menu is open or not and when it should close.
Currently i have it like that:
Currently i have it like that:
export default function MultiDropdownMenu({ menu }: Props) {
const [isOpen, setIsOpen] = useState(false);
const dropdownRef = useRef<HTMLDivElement>(null);
const toggleDropdown = () => {
setIsOpen(!isOpen);
};
const handleClickOutside = (event: MouseEvent) => {
if (
dropdownRef.current &&
!dropdownRef.current.contains(event.target as Node)
) {
setIsOpen(false);
}
};
useEffect(() => {
document.addEventListener("mousedown", handleClickOutside);
return () => {
document.removeEventListener("mousedown", handleClickOutside);
};
}, []);
return (
<div ref={dropdownRef}>
<button
onClick={toggleDropdown}
>Toggle</button>
</div>