2010-07-15 9 views
0

J'utilise une requête j pop pour mon application web.J'ai besoin de plusieurs pop-up dans la même page à des fins différentes.J'utilise différents id pour les invoquer. Le problème est sur l'événement Click out! (Hors popup). J'utilise le script comme suit pour fermer la coucheJquery Popup avec PHP

//Click out event! 
$("#backgroundPopup").click(function(){ 

     disablePopup("#popupContact"); 
    disablePopup("#deleteConfirm"); 
}); 

Ma fonction disablePopup dit comme suit

//disabling popup with jQuery magic! 
function disablePopup(divid){ 
    //disables popup only if it is enabled 
    if(popupStatus==1){ 
     $("#backgroundPopup").fadeOut("slow"); 
     $(divid).fadeOut("slow"); 
     popupStatus = 0; 
    } 
} 

il ne ferme pas ma seconde couche deleteConfirm.How puis-je résoudre ce problème ... S'il vous plaît aidez-moi

Répondre

1

bien sûr, parce que la fonction disablePopup() vérifie popupStatus == 1, et que vous définissez popupStatus = 0 à votre premier disablePopup("#popupContact");, alors quand il se c alloué la deuxième fois il ne peut pas aller à if(popupStatus==1){

FYI, popupStatus est une variable globale.

ma suggestion est de mettre un attribut à votre pop-up:

//disabling popup with jQuery magic! 
function disablePopup(divid){ 
    //disables popup only if it is enabled 
    if($(divid).attr('popupStatus') ==1){ 
     $("#backgroundPopup").fadeOut("slow"); 
     $(divid).fadeOut("slow"); 
     $(divid).attr('popupStatus','1') 
    } 
} 

espérons que cela fonctionne

+0

Merci ... ses works.I pense que la même chose se produira quand nous enlevons si la condition aussi – abhis