Mettre 2 comptes à rebours dynamique

Résolu
Pedro08 Messages postés 2 Date d'inscription samedi 4 février 2006 Statut Membre Dernière intervention 13 février 2007 - 10 févr. 2007 à 13:53
Pedro08 Messages postés 2 Date d'inscription samedi 4 février 2006 Statut Membre Dernière intervention 13 février 2007 - 13 févr. 2007 à 22:15
Bonjour,
J'ai un petit probleme de compte à rebours dynamique. Je voudrais afficher 2 compteurs sur ma page mais impossible de trouver la variable à modifier pour que ca marche.
Je souhaite donc faire plusieurs compte a rebours.
Voici le code (trouvé sur le forum) comportant les 2 comptes à rebours: ce code affiche bien les deux temps max sauf que le premier n'évolue pas, par contre le deuxieme marche impecable.
Je pense que le plus propre (point de vue codage) est de faire une fonction unique mais je n'ai pas reussi, tjs le meme probleme du premier compteur qui reste statique.
Merci de bien vouloir m'aider,


<hr />

<SCRIPT type="text/javascript">
var Seconds_Counter = 2000; // indique la durée du compte à rebours en secondes
var Target_Counter = document.getElementById('Counter');
var Target_Time_Counter = new Date();
var Time_Beginn_Counter = Target_Time_Counter.getTime();
var Time_End_Counter = Time_Beginn_Counter + (Seconds_Counter*1000);
Target_Time_Counter.setTime(Time_End_Counter);
CountDown_Counter(); 
  
function CountDown_Counter() 
    {
   var URL_Redirection_Counter = "index.php"; // indiquez le chemin du lien vers lequel le texte doit pointer
 var Text_Redirection_Counter = "terminé."; // indiquez le texte du lien
 var Target_Redirection_Counter = "_top"; // indiquez le type de target : "_blank", "_parent", "_self" ou "_top" 
 var Current_Date_Counter = new Date();
 var Curren_tTime_Counter = Current_Date_Counter.getTime()
 var Open_Time_Counter = Math.floor((Target_Time_Counter-Curren_tTime_Counter)/1000);
 var s_Counter = Open_Time_Counter % 60;
 var m_Counter = ((Open_Time_Counter-s_Counter)/60) % 60;
 var h_Counter = ((Open_Time_Counter-s_Counter-m_Counter*60)/(60*60));
 var fh_Counter  = ((h_Counter < 10) ? "0" : "") + h_Counter + "h ";
 var fm_Counter  = ((m_Counter < 10) ? "0" : "") + m_Counter + "min ";
 var fs_Counter  = ((s_Counter < 10) ? "0" : "") + s_Counter + "sec";
 var Time_Counter = fh_Counter + fm_Counter + fs_Counter;
 var Output_String_Counter=Time_Counter;
 if(Open_Time_Counter<=0)
  {
  Target_Counter.innerHTML=  "" + Text_Redirection_Counter + ""; 
  }
 else
  {
  Target_Counter.innerHTML= "fini ds " + Output_String_Counter;
  window.setTimeout("CountDown_Counter()",1000);
  }
 }
</SCRIPT>

DEUXIEME COMPTEUR:

<SCRIPT type="text/javascript">
var Seconds_Counter = 1000; // indique la durée du compte à rebours en secondes
var Target_Counter = document.getElementById('Counter_2');
var Target_Time_Counter = new Date();
var Time_Beginn_Counter = Target_Time_Counter.getTime();
var Time_End_Counter = Time_Beginn_Counter + (Seconds_Counter*1000);
Target_Time_Counter.setTime(Time_End_Counter);
CountDown_Counter2(); 
  
function CountDown_Counter2()
 {
 var URL_Redirection_Counter = "index.php"; // indiquez le chemin du lien vers lequel le texte doit pointer
 var Text_Redirection_Counter = "terminé."; // indiquez le texte du lien
 var Target_Redirection_Counter = "_top"; // indiquez le type de target : "_blank", "_parent", "_self" ou "_top" 
 var Current_Date_Counter = new Date();
 var Curren_tTime_Counter = Current_Date_Counter.getTime()
 var Open_Time_Counter = Math.floor((Target_Time_Counter-Curren_tTime_Counter)/1000);
 var s_Counter = Open_Time_Counter % 60;
 var m_Counter = ((Open_Time_Counter-s_Counter)/60) % 60;
 var h_Counter = ((Open_Time_Counter-s_Counter-m_Counter*60)/(60*60));
 var fh_Counter  = ((h_Counter < 10) ? "0" : "") + h_Counter + "h ";
 var fm_Counter  = ((m_Counter < 10) ? "0" : "") + m_Counter + "min ";
 var fs_Counter  = ((s_Counter < 10) ? "0" : "") + s_Counter + "sec";
 var Time_Counter = fh_Counter + fm_Counter + fs_Counter;
 var Output_String_Counter=Time_Counter;
 if(Open_Time_Counter<=0)
  {
  Target_Counter.innerHTML=  "" + Text_Redirection_Counter + ""; 
  }
 else
  {
  Target_Counter.innerHTML= "fini ds " + Output_String_Counter;
  window.setTimeout("CountDown_Counter2()",1000);
  }
 }
</SCRIPT>

<hr />

2 réponses

Pedro08 Messages postés 2 Date d'inscription samedi 4 février 2006 Statut Membre Dernière intervention 13 février 2007
13 févr. 2007 à 22:15
Merci de ta solution, elle marche trés bien, je voudrais savoir maitenant si c'est possible de faire une fonction commune au deux compte à rebours? Pour soulager le code et faire plus de compteur.
Merci de m'avoir aider
3
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
13 févr. 2007 à 19:51
B
onjour...
ceci est normal tu utilises des mêmes variables pour faire tourner tes compteurs

en gras rouge ce qui doit être différent...

<SCRIPT type= "text/javascript">
var Seconds_Counter = 1000; // indique la durée du compte à rebours en secondes
var Target_Counter2 = document.getElementById('Counter_2');
var Target_Time_Counter2 = new Date();
var Time_Beginn_Counter = Target_Time_Counter2 .getTime();
var Time_End_Counter = Time_Beginn_Counter + (Seconds_Counter*1000);
Target_Time_Counter2.setTime(Time_End_Counter);
CountDown_Counter2();

function CountDown_Counter2(){
  var URL_Redirection_Counter = "index.php";
  var Text_Redirection_Counter = "terminé.";
  var Target_Redirection_Counter = "_top";
  var Current_Date_Counter = new Date();
  var Curren_tTime_Counter = Current_Date_Counter.getTime()
  var Open_Time_Counter = Math.floor(( Target_Time_Counter2 -Curren_tTime_Counter)/1000);
  var s_Counter = Open_Time_Counter % 60;
  var m_Counter = ((Open_Time_Counter-s_Counter)/60) % 60;
  var h_Counter = ((Open_Time_Counter-s_Counter-m_Counter*60)/(60*60));
  var fh_Counter  = ((h_Counter < 10) ? "0" : "") + h_Counter + "h ";
  var fm_Counter  = ((m_Counter < 10) ? "0" : "") + m_Counter + "min ";
  var fs_Counter  = ((s_Counter < 10) ? "0" : "") + s_Counter + "sec";
  var Time_Counter = fh_Counter + fm_Counter + fs_Counter;
  var Output_String_Counter=Time_Counter;
  if(Open_Time_Counter<=0){
    Target_Counter2 .innerHTML =  "" + Text_Redirection_Counter + "";
  }
  else{
    Target_Counter2.innerHTML= "fini ds " + Output_String_Counter;
    window.setTimeout("CountDown_Counter2()",1000);
  }
}
</SCRIPT>

;0)
0
Rejoignez-nous