JS как скрыть блок, при клике мимо него в произвольной области

igor_ua

Новичок
JS как скрыть блок, при клике мимо него в произвольной области

Подскажите пожалуйста, каким образом делают следующие:
есть блок, например всплывающее меню, как сделать так, чтобы когда мы кликаем мимо него, то блок убирался?
На какой элемент нужно вешать событие onclick и как определить был ли клик на данном блоке или мимо?
Спасибо!
 

Farsh

~ on ~ high ~ wave ~
По смыслу нужно вешать на весь документ, и при клике проверять , открыто ли всплывающее окно , если так и есть - прятать .
 

kruglov

Новичок
А на всплытое окно вешаем отмену всплытия события:
Код:
function my_stop_propagation(e){
	if (typeof(e.stopPropagation) == 'function') e.stopPropagation()
	if (typeof(e.cancelBubble) == 'boolean') e.cancelBubble = true
}
<div onclick="my_stop_propagation(event)">
 
Сверху