Si solo deseas ocultar al elemento en cuestión luego de dar un clic en cualquier zona de la página excepto en el área que ocupa el elemento, debes de usar la propiedad
event.target
para detectar al elemento en donde se produjo el evento, que en este caso será el evento
click
. Luego, compara a este elemento con el elemento que quieres ocultar y si son distintos, procedes a ocultar al elemento mediante la propiedad
display
de CSS.
Código Javascript
:
Ver originalvar div = document.getElementById("id_div");
window.addEventListener("click", function (event){
if (event.target != div) div.style.display = "none";
}, false);
Así es como quedaría:
Saludos