Files
30-seconds-of-code/snippets/onClickOutside.md
Angelos Chalaris 8a6b73bd0c Update covers
2023-02-16 22:24:28 +02:00

728 B

title, tags, author, cover, firstSeen, lastUpdated
title tags author cover firstSeen lastUpdated
Handle click outside browser,event chalarangelo interior-13 2021-01-06T13:57:56+02:00 2021-01-06T13:57:56+02:00

Runs the callback whenever the user clicks outside of the specified element.

  • Use EventTarget.addEventListener() to listen for 'click' events.
  • Use Node.contains() to check if Event.target is a descendant of element and run callback if not.
const onClickOutside = (element, callback) => {
  document.addEventListener('click', e => {
    if (!element.contains(e.target)) callback();
  });
};
onClickOutside('#my-element', () => console.log('Hello'));
// Will log 'Hello' whenever the user clicks outside of #my-element