2010-09-21 6 views
10

nous montrons une boîte sur l'écran que je veux cacher quand l'utilisateur clique n'importe où sur l'écran, y compris le corps, les ancres, les divs, les boutons, etc ... Y at-il un sélecteur qui peut manipuler ceci pour moi? Ou est-ce un cas de $('body, a, div, input').click()?jQuery click() événement catch-all?

Répondre

22

Vous pouvez le faire comme ceci:

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

Depuis les événements click, par défaut, bubble up-document, ceci est une approche « fourre-tout » ... si vous ne voulez pas de clics intérieur la boîte pour la fermer, ajoutez un appel .stopPropagation() sur cesclick événements comme celui-ci:

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