2010-09-21 13 views
10

estamos mostrando un cuadro en la pantalla que quiero ocultar cuando el usuario hace clic en cualquier parte de la pantalla, incluyendo cuerpo, anclas, divs, botones, etc. ... ¿Hay un selector que pueda manejar esto por mí? ¿O es un caso de $('body, a, div, input').click()?jQuery click() evento catch-all?

Respuesta

22

Puede hacerlo de esta manera:

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

Desde los click eventos, de forma predeterminada, bubble up-document, este es un "cajón de sastre" enfoque ... si no quiere clics de el interior de la caja para cerrarla, agregue una llamada .stopPropagation() en esosclick eventos como este:

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