2012-05-27 15 views
8

Sto facendo un ingresso di ricerca sul fuoco mostra un div con le opzioni con i seguenti:come nascondere div con jquery quando si fa clic ovunque, tranne un div?

$("#search").focus(function(){ 

$("#options").fadeIn("fast"); 

}); 

sto nascondendo il div indietro con questa funzione

$("#search").blur(function(){ 

$("#options").fadeOut("fast"); 

}); 

ora il problema è anche quando l'utente fa clic a qualsiasi casella di controllo in #option nasconde. Come posso smettere di nasconderlo quando fai clic sulle caselle di controllo?

+0

ho perso); su entrambe le funzioni scusami – danny

+0

per favore fornisci il markup html. –

+0

Questa domanda ha già avuto risposta su http://stackoverflow.com/questions/152975/how-to-detect-a-click-outside-an-element. Ci sono diverse soluzioni possibili per risolvere il problema. – Pierre

risposta

3
$("#search").blur(function(e){ 
    e.stopPropagation() 
    $("#options").fadeOut("fast"); 
}); 
+0

$ (this) .children ('input [type = checkbox]'). On ('click', function() {e.stopPropagation();}); // non manca questo nel listener di sfocatura? – mtizziani

Problemi correlati