2013-06-26 3 views
0

Je suis assez nouveau pour javacript et j'essaye d'ajouter un compteur numérique en tant que boucle à la fonction ci-dessous pour me sauver 8 fois le tapant dehors!Ajouter un compteur à la boucle de fonction javascript

La fonction doit s'appeler loadPopup1 - loadPopup8 et la div #toPopup doit être toPopup1 - toPupup8.

Voici mon code:

function loadPopup() { 
    if(popupStatus == 0) { // if value is 0, show popup 
     closeloading(); // fadeout loading 
     $("#toPopup").fadeIn(0500); // fadein popup div 
     $("#backgroundPopup").css("opacity", "0.7"); // css opacity, supports IE7, IE8 
     $("#backgroundPopup").fadeIn(0001); 
     popupStatus = 1; // and set value to 1 
    } 
} 

Un grand merci pour votre aide!

Pete

Répondre

2

main sur un paramètre à la fonction ...

function loadPopup(index) { 
    ... 
    $("#toPopup" + index).fadeIn(0500); 
    ... 
} 

Ensuite, si vous voulez agir sur # 1 et # 7, appeler en passant l'index ...

loadPopup(1); 
loadPopup(7); 
0

ce code va créer vos 8 fonctions:

for (var i = 1; i <= 8; ++i) { 
    (function(i) { 
     window['loadPopup' + i] = function loadPopup() { 
      if(popupStatus == 0) { // if value is 0, show popup 
       closeloading(); // fadeout loading 
       $("#toPopup" + i).fadeIn(0500); // fadein popup div 
       $("#backgroundPopup").css("opacity", "0.7"); // css opacity, supports IE7, IE8 
       $("#backgroundPopup").fadeIn(0001); 
       popupStatus = 1; // and set value to 1 
      } 
     }; 
    })(i); 
} 
0
function loadPopup(i) { 
    if(popupStatus == 0) { // if value is 0, show popup 
     closeloading(); // fadeout loading 
     $("#toPopup" + i).fadeIn(0500); // fadein popup div 
     $("#backgroundPopup").css("opacity", "0.7"); // css opacity, supports IE7, IE8 
     $("#backgroundPopup").fadeIn(0001); 
     popupStatus = 1; // and set value to 1 
    } 
} 

var wrapper={}; 
for (var i =0; i < 8; i++){ 
    wrapper['loadPopup' + i] = new function(){loadPopup(i);}; 
} 

// so you can call 
wrapper.loadPopup3(); 
Questions connexes