2011-11-16 25 views
10

In modo molto semplice modali jQuery, chiudo il modal cliccando sul vicinoCome chiudere una modal facendo clic all'esterno della finestra modale?

$('#close').click(function(e) { 
    e.preventDefault(); 
    $('#overlay, #alertModalOuter').fadeOut(400, function() { 
    $(this).remove(); 
    }); 
}); 

Come posso chiudere il modal cliccando sia sul pulsante CLOSE (che si trova all'interno delle finestre modali) o facendo clic ovunque al di fuori del finestra modale.

+2

legano lo stesso sull'elemento overlay' '#. –

risposta

9

Modifica della funzione in questo modo dovrebbe funzionare:

$('#close, #overlay').click(function(e) { 
     e.preventDefault(); 
     $('#overlay, #alertModalOuter').fadeOut(400, function() { 
     $('#close').remove(); 
    }); 
}); 
+0

Grazie, funziona perfettamente; anche se manca una virgola :) – Googlebot

+1

Hai fatto un errore "#close #overlay" significa elemento con id #close seguito da elemento con id #overflow, intendevi "#close, #overlay" –

+0

Grazie a entrambi, l'ho fatto davvero. Ora aggiornato! –

3

Aggiungere lo stesso listener di clic al proprio overlay.

5

ho trovato utile per includere:

$('.item-modal').click(function(e) { 
    e.stopPropagation(); 
}); 
Problemi correlati