Masquer div en cliquant sur l'extérieur
J'ai cherché et la recherche n'est pas seulement google, mais aussi ici et encore trouver une solution qui fonctionne.
J'ai un div qui est caché par défaut, puis basculée en cliquant sur un lien. Je tiens également à cacher lorsque vous cliquez en dehors de la div. Simple, pensais-je, mais rien, j'ai essayé avait travaillé encore.
C'est le jquery:
<script type="text/javascript">
function toggleDiv(divID) {
$("#"+divID).fadeToggle(200);
}
</script>
Et le lien qui permet de:
<a onclick="toggleDiv('myDiv');">Link</a>
Et puis la div:
<div id="myDiv">
stuff
</div>
Si quelqu'un a des conseils, je voudrais vraiment l'apprécier.
Puisque vous êtes à l'aide de jQuery, vous devrez également joindre vous cliquez sur gestionnaire d'événement à l'aide de jQuery installations: $(document).ready(function() { $("#linkId").cliquez sur(function() { // Faire quelque chose }));
OriginalL'auteur scferg | 2011-06-22
Vous devez vous connecter pour publier un commentaire.
Cela devrait faire l'affaire pour vous:
Exemple →
EDIT: travaille Maintenant pour tous les scénarios.
En fait, il semble être un peu buggé quand on cherche à avoir le même comportement avec plusieurs divs.
OriginalL'auteur mVChr
Vous pouvez simplement ajouter un gestionnaire d'événements click sur
body
comme un clic n'importe où "bulle" de cet élément.Vous pouvez également ajouter une classe sur basculé d'éléments dans votre code de démonstration de sorte que vous pouvez cibler ces plus précisément, vous voulez les cacher.
Si vous ne voulez pas le visible
div
pour cacher lorsque vous cliquez dessus, vous aurez également besoin d'annuler clique sur ces éléments, peut-être à l'aide de jQuerylive()
méthode.OriginalL'auteur Marcel
OriginalL'auteur Pankaj