Comment vérifier l'affichage (aucun/bloquer) d'un div en jquery?
Je me sers de ce,
$("#loginanchor1").click(function (e) {
e.preventDefault();
$("#signin_menu1").slideDown("slow");
});
$(document).mouseup(function (e) {
if ($(e.target).parent("a.loginanchor1").length == 0) {
//$(".signin").removeClass("menu-open");
$("#signin_menu1").slideUp("slow");
}
});
Tout fonctionne bien, mais ce qui se passe, c'est quand le signin_menu1
est affiché bloc et je clique sur mon bouton de la souris à l'intérieur de la div div slidesup... je veux mouseup fonction qui doit être empêché lorsque la signin_menu1
est affiché bloc. Alors j'ai pensé à l'évolution de la condition comme,
if(($(e.target).parent("a.loginanchor1").length==0) &&( //check the display of the div)
Maintenant comment vérifier l'affichage?
OriginalL'auteur Mubeen | 2010-09-23
Vous devez vous connecter pour publier un commentaire.
essayer
Je suis confondu avec le problème, mais
$("#signin_menu1").is(':visible')
serait de vérifier si la div est visible (display:block).ajouté des notes:
vous pouvez essayer de vérifier si la
$(e.target)
est lesignin_menu1
ou de l'est à l'intérieur designin_menu1
. le faire comme cela,je veux éviter événement mouseup à l'intérieur de la div
voir ajout de notes:
Veuillez noter que le
:visible
sélecteur ne prend pas effet si l'élément parent estdisplay: none
. Donc, même si l'élément que vous vérifiez avecis(':visible')
a la propriété CSSdisplay: block / inline / ...
ce sélecteur de ne pas le chercher.OriginalL'auteur Reigel
Vous pouvez utiliser du jquery :visibles pour cela.
OriginalL'auteur Tim