Pregunta

Estamos mostrando un cuadro en la pantalla que desea ocultar cuando el usuario hace clic en cualquier lugar de la pantalla, incluyendo el cuerpo, anclas, divs, botones, etc ... ¿Hay un selector que puede manejar esto por mí? O se trata de un caso de $('body, a, div, input').click()?

¿Fue útil?

Solución

Puede hacerlo de esta manera:

$(document).click(function() {
  $("#boxID").hide();
});

Desde los acontecimientos click, de forma predeterminada, burbuja a document, esto es un "catch para todos" ... si usted no quiere clics de dentro de de la caja para cerrarla, agregue un .stopPropagation() llamar a los eventos click como esta:

$("#boxID").click(function(e) {
  e.stopPropagation();
});

Otros consejos

Sólo puede unirse al evento click del elemento de documento. Probarlo en http://jsfiddle.net/ZqEbY/ .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top