Forum de discussion
Forum « Programmation Javascript » (archives)
Plusieurs compteur sur la meme page
Envoyé: 25 avril 2006, 3h30 par alricaus
Javascript n'est pas du tout un language que je maitrise,et j'aimerai faire afficher sur une page plusieurs comptes à rebours... J'ai un script qui le permet, mais que pour un seul, car dès lors que je créé un deuxième appel de ce compteur dans une même page, l'on ne voit que le premier s'afficher...
Voici le source:
<SCRIPT LANGUAGE="JavaScript1.2">
function setcountdown(theyear,themonth,theday,thehour,themin,thesec){
yr=theyear;mo=themonth;da=theday;hr=thehour;min=themin;sec=thesec
}
////////// CONFIGUREZ LE COMPTEUR CI-DESSOUS //////////////////
// 1°) Configurez la date dans le futur dans le format ANNEE, MOIS, JOUR, HEURES sur 24h (0=minuit,23=11pm), MINUTES, SECONDES
setcountdown(<?php echo $date_depart['year'];?>,<?php echo $date_depart['mon'];?>,<?php echo $date_depart['mday'];?>,<?php echo $date_depart['hours'];?>,<?php echo $date_depart['minutes'];?>,<?php echo $date_depart['seconds'];?>)
// 2°) Changez les deux textes ci-dessous. Le premier pour annoncer l'évènement, le second qui s'affichera à la fin du compte à rebours.
var occasion=""
var message_on_occasion="Terminé"
// 3°) Configurez ci-dessous 5 variables pour la largeur, hauteur, la couleur de l'arrière plan, et le style du texte du champ
var countdownwidth='200px' // ou une valeur en % comme var countdownwidth='95%'
var countdownheight='35px'
var countdownbgcolor='#D3E2ED' // ou une couleur en texte comme : black
var opentags='<font face="Verdana"><small>'
var closetags='</small></font>'
////////// NE RIEN EDITER CI-DESSOUS //////////////////
var montharray=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")
var crosscount=''
function start_countdown(){
if (document.layers)
document.countdownnsmain.visibility="show"
else if (document.all||document.getElementById)
crosscount=document.getElementById&&!document.all?document.getElementById("countdownie") : countdownie
countdown()
}
if (document.all||document.getElementById)
document.write('<span id="countdownie" style="width:'+countdownwidth+'; background-color:'+countdownbgcolor+'"></span>')
window.onload=start_countdown
function countdown(){
var today=new Date()
var todayy=today.getYear()
if (todayy < 1000)
todayy+=1900
var todaym=today.getMonth()
var todayd=today.getDate()
var todayh=today.getHours()
var todaymin=today.getMinutes()
var todaysec=today.getSeconds()
var todaystring=montharray[todaym]+" "+todayd+", "+todayy+" "+todayh+":"+todaymin+":"+todaysec
futurestring=montharray[mo-1]+" "+da+", "+yr+" "+hr+":"+min+":"+sec
dd=Date.parse(futurestring)-Date.parse(todaystring)
dday=Math.floor(dd/(60*60*1000*24)*1)
dhour=Math.floor((dd%(60*60*1000*24))/(60*60*1000)*1)
dmin=Math.floor(((dd%(60*60*1000*24))%(60*60*1000))/(60*1000)*1)
dsec=Math.floor((((dd%(60*60*1000*24))%(60*60*1000))%(60*1000))/1000*1)
//if on day of occasion
if(dday<=0&&dhour<=0&&dmin<=0&&dsec<=1&&todayd==da){
if (document.layers){
document.countdownnsmain.document.countdownnssub.document.write(opentags+message_on_occasion+closetags)
document.countdownnsmain.document.countdownnssub.document.close()
}
else if (document.all||document.getElementById)
crosscount.innerHTML=opentags+message_on_occasion+closetags
return
}
//if passed day of occasion
else if (dday<=-1){
if (document.layers){
document.countdownnsmain.document.countdownnssub.document.write(opentags+"Construction terminée"+closetags)
document.countdownnsmain.document.countdownnssub.document.close()
}
else if (document.all||document.getElementById)
crosscount.innerHTML=opentags+"Construction terminée"+closetags
return
}
//else, if not yet
else{
if (document.layers){
document.countdownnsmain.document.countdownnssub.document.write("Temps restant:<?php print"<br>";?>"+opentags+dday+ " j "+dhour+" h "+dmin+" min "+dsec+" secondes "+occasion+closetags)
document.countdownnsmain.document.countdownnssub.document.close()
}
else if (document.all||document.getElementById)
crosscount.innerHTML="Temps restant:<?php print"<br>";?> "+opentags+dday+ " j "+dhour+" h "+dmin+" min "+dsec+" secondes "+occasion+closetags
}
setTimeout("countdown()",1000)
}
</SCRIPT><!-- FIN DU SCRIPT COMPTE A REBOURS -->
J'espère avoir été assé clair.
Merci
Réponses
|