xxxxxxxxxx
document.addEventListener('click', (event) => {
let targetEl = event.target
do {
if (targetEl == selectBox) return
targetEl = targetEl.parentNode;
} while (targetEl);
content.classList.add('hidden')
svgIcon.classList.remove('rotate-180')
// console.log('outside')
})
xxxxxxxxxx
var ignoreClickOnMeElement = document.getElementById('someElementID');
document.addEventListener('click', function(event) {
var isClickInsideElement = ignoreClickOnMeElement.contains(event.target);
if (!isClickInsideElement) {
//Do something click is outside specified element
}
});
xxxxxxxxxx
$(document).click((event) => {
if (!$(event.target).closest('#element').length) {
// the click occured outside '#element'
}
});
xxxxxxxxxx
$(window).click(function() {
//Hide the menus if visible
});
$('#menucontainer').click(function(event){
event.stopPropagation();
});
xxxxxxxxxx
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
xxxxxxxxxx
window.addEventListener('mousedown', e => {
// Get the element that was clicked
const clickedEl = e.target;
// `el` is the element you're detecting clicks outside of
if (el.contains(clickedEl)) {
// Clicked inside of `el`
} else {
// Clicked outside of `el`
}
});