<script language="JavaScript1.2">
function setcountdown(theyear,themonth,theday,thehour,themin,thesec){
yr=theyear;mo=themonth;da=theday;hr=thehour;min=themin;sec=thesec
}
function settoday(theyear,themonth,theday,thehour,themin,thesec) {
todayy=theyear ;
todaym=themonth;
todayd=theday;
todayh=thehour;
todaymin=themin;
todaysec=thesec-2;
if(todaym==4 || todaym==6 || todaym==9 ||todaym==11) max_month=30;
else if(todaym==2) max_month=28;
else max_month=31;
msec=1000;
}
// 1°) Configurez la date dans le futur dans le format ANNEE, MOIS, JOUR, HEURES sur 24h (0=minuit,23=11pm), MINUTES, SECONDES
setcountdown(2007,05,20,18,38,0)
settoday(<?php echo date('Y').",".date('m').",".date('d').",".date('H').",".date('i').",".date('s'); ?>);
// 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="C'est aujourd'hui l'ouverture, patience..."
// 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='100%' // ou une valeur en % comme var countdownwidth='95%'
var countdownheight='35px'
var countdownbgcolor='' // ou une couleur en texte comme : lightyellow
var opentags='<p><font size="4" face="tahoma"><strong>'
var closetags='</strong></font></p>'
////////// 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(){
msec--;
if(msec==0) {
msec=1000;
todaysec++;
if(todaysec==60) {
todaysec=0;
todaymin++;
if(todaymin==60) {
todaymin=0;
todayh++;
if(todayh==24) {
todayh=0;
todayd++;
if(todayd==max_month+1) {
todayd=1
todaym++
if(todaym++==13) {
todaym=1;
todayy++;
}
}
}
}
}
}
var todaystring=montharray[todaym-1]+" "+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+"Prochainement..."+closetags)
document.countdownnsmain.document.countdownnssub.document.close()
}
else if (document.all||document.getElementById)
crosscount.innerHTML=opentags+"L'évènement est déjà arrivé ! "+closetags
return
}
//else, if not yet
else{
if (document.layers){
document.countdownnsmain.document.countdownnssub.document.write(""+opentags+dday+ " jours, "+dhour+" heures, "+dmin+" minutes, et "+dsec+" secondes, et "+msec+" millisecondes"+occasion+closetags)
document.countdownnsmain.document.countdownnssub.document.close()
}
else if (document.all||document.getElementById)
crosscount.innerHTML=""+opentags+dday+ " jours, "+dhour+" heures, "+dmin+" minutes, et "+dsec+" secondes, et "+msec+" millisecondes"+occasion+closetags
}
setTimeout("countdown()",1)
}
</script>
Voila version qui devrait fonctionner mais qui ne marche pas (car 100ms=1sec, ce qui est etrange). Si tu veux feinter pour que cela soit plus ou moins exact remplace la ligne
par
dans countdown() mais ca reste très approximatif... je comprend pas bien pourquoi...
Pour l'affichage sur deux chiffres quand je le change je perd la mise en forme bizarrement...
Tell me and I forget. Teach me and I remember. Involve me and I learn.