2013-05-05 5 views
2

Je réussis à utiliser le code ci-dessous pour afficher 1 minuteur écoulé sur une page Web. J'aimerais pouvoir afficher plusieurs compteurs de temps écoulés sur la même page, un pour chaque équipe.Compteurs de temps écoulés multiples

J'ai été capable d'y parvenir en dupliquant tout le code, bien que cela rende difficile la recherche de la date à éditer, si nécessaire.

Est-il possible de lister toutes les dates, pour chaque équipe, dans une section du code?

Par exemple.

id='ClockTEAM2' edate1="2/11/2009 00:00:00 
id='ClockTEAM2' edate2="12/06/2012 00:00:00 

Toute aide serait grandement appréciée

TEAM1 
<td align="middle"> 
<font color="#00309c"> 
<span name="ClockTEAM1" id='ClockTEAM1' edate="2/11/2009 00:00:00"> 



<script language="Javascript"> 
function displaydatetime() { 

var today = new Date(); 
    var oSpan = document.all.tags("span"); 
    if (typeof(oSpan) != "undefined") 
    { 
     for (var i=0; i<oSpan.length; i++) 
     { 
      if (oSpan[i].name == "ClockTEAM1") 
      { 
       startday = new Date(oSpan[i].edate); 
       secsPerDay = 1000 ; 
       minPerDay = 60 * 1000 ; 
       hoursPerDay = 60 * 60 * 1000; 
       PerDay = 24 * 60 * 60 * 1000; 
       secsLeft = (today.getTime() - startday.getTime())/minPerDay; 
       secsRound = Math.round(secsLeft); 
       secsRemain = secsLeft - secsRound; 
       secsRemain = (secsRemain < 0) ? secsRemain = 60 - ((secsRound - secsLeft) * 60) : secsRemain = (secsLeft - secsRound) * 60; 
       secsRemain = Math.round(secsRemain); 
       minLeft = ((today.getTime() - startday.getTime())/hoursPerDay); 
       minRound = Math.round(minLeft); 
       minRemain = minLeft - minRound; 
       minRemain = (minRemain < 0) ? minRemain = 60 - ((minRound - minLeft) * 60) : minRemain = ((minLeft - minRound) * 60); 
       minRemain = Math.round(minRemain - 0.495); 
       hoursLeft = ((today.getTime() - startday.getTime())/PerDay); 
       hoursRound = Math.round(hoursLeft); 
       hoursRemain = hoursLeft - hoursRound; 
       hoursRemain = (hoursRemain < 0) ? hoursRemain = 24 - ((hoursRound - hoursLeft) * 24) : hoursRemain = ((hoursLeft - hoursRound) * 24); 
       hoursRemain = Math.round(hoursRemain - 0.5); 
       daysLeft = ((today.getTime() - startday.getTime())/PerDay); 
       daysLeft = (daysLeft - 0.5); 
       daysRound = Math.round(daysLeft); 
       daysRemain = daysRound; 

       if (secsRemain > 59) 
       { 
        secsRemain = "0"; 
        if (minRemain > 59) 
        { 
         minRemain = "0"; 
         if (hoursRemain > 23) 
         { 
          hoursRemain = "0"; 
          if (daysRemain>364) 
          { 
           daysRemain = "0"; 
          } 
         } 
        } 
       } 

       secsRemain = (secsRemain < 10) ? secsRemain = "0" + secsRemain : secsRemain; 
       minRemain = (minRemain < 10) ? minRemain = "0" + minRemain : minRemain;               
       timeRemain = daysRemain + " Days " +  hoursRemain + ":" + minRemain + ":" +   secsRemain;            
       oSpan[i].innerHTML = timeRemain; 
      } 
     }   
     timerID=setTimeout("displaydatetime()", 1000) 

     timerRunning = true; 
    } 
} 
displaydatetime(); 



</script> 
</span> 
</font> 
</td> 
</tr> 
</table> 
+1

S'IL VOUS PLAÎT NE PAS SHOUT. Utilisez toutes les majuscules avec parcimonie si vous ne voulez pas nous déranger les nerfs. Merci pour votre coopération dans ce domaine. En outre, comment Java est impliqué ici, car cela semble être du JavaScript pur et HTML? –

+0

Vous faites mal votre opération ternaire: pas 'secsRemain = (secsRemain <0)? secsRemain = 60 - ((secsRound - secsLeft) * 60): secsRemain = (secsLeft - secsRound) * 60; 'mais:' secsRemain = (secsRemain <0)? 60 - ((secsRound - secsLeft) * 60): (secsLeft - secsRound) * 60; ' – Shikiryu

+0

désolé n'a pas réalisé que j'ai capitalisé un mot. Est-ce l'application correcte du processus? Je suis ouvert aux suggestions sur d'autres méthodes. – Swicked

Répondre

0

Je ne sais pas ce que vous avez des problèmes avec exactement. Avez-vous essayé de placer les deux travées juste l'une après l'autre?

Questions connexes