Comment Trigger Fermer le panneau de clic hors de la liste
Question
Je viens d'installer un panneau slideDown à partir du bouton « FAST CITATION » en haut de la page:
Est-il possible de faire le panneau slideUp lorsque l'utilisateur clique partout en dehors du panneau slideDown? Au-dessous du panneau?
La solution
Il semble que vous utilisez jQuery (scie de jQuerify (Firebug)). Donc, vous devez déclencher le clic de bouton de fermeture lorsque vous cliquez dans la zone extérieure.
En supposant que les événements sont diapositive sur .closeQ
, indiquez votre outsidearea et lier l'événement click
pour déclencher le bouton de fermeture.
$("outsidearea").click(function(){ $(".closeQ").trigger("click"); });
Répondre à votre commentaire:
Sur votre diapositive down / up méthode ajouter ce code (à la première ligne (près d'abord, ouvert après))
$(".btn-slide.closeQ, .btn-slide2.closeQ").trigger("click");
Il trouvera si le panneau est ouvert, et si elle est ouverte, elle déclenche l'événement à proximité.
Autres conseils
Qu'est-ce que vous pouvez faire est lier un événement, cliquez sur le document qui cache le panneau si quelque chose en dehors du panneau est cliqué, mais ne le cachera pas si quelque chose à l'intérieur du panneau est cliqué, afin que votre événement « show » (ou slideDown ou tout ce qui montre le panneau)
$('.form_wrapper').show(function(){
$(document).bind('click', function (e) {
var clicked = $(e.target);
if (!clicked.parents().hasClass(".class-of-panel")) {
$('.form_wrapper').hide();
}
});
});
Puis, quand le cacher, unbind l'événement click
$(document).unbind('click');