Compilation conditionnelle.

A3nigma64 Messages postés 2 Date d'inscription mardi 23 octobre 2007 Statut Membre Dernière intervention 25 octobre 2007 - 23 oct. 2007 à 03:14
A3nigma64 Messages postés 2 Date d'inscription mardi 23 octobre 2007 Statut Membre Dernière intervention 25 octobre 2007 - 25 oct. 2007 à 01:03
J'ai trouvé un script assez bien pour faire un compte à rebours mais voila lorsque je l'applique sur une de mes page web le compte à rebours ne s'affiche pas et une erreur de script survient et m'indique ceci : "Compilation conditionnelle désactivé" ce que je ne comprends pas c'est que j'ai fait un script pour ma date qui fonctionne selon le même principe et celui ci n'a pas de problème.

Voici le fameux code pour le compte à rebours :

<!-- DEBUT DU SCRIPT COMPTE A REBOURS -->
<!-- Script provenant de



http://www.toulouse-renaissance.net/c_outils/ -->
<script language="JavaScript1.2">


//Dynamic countdown Script II- © Dynamic Drive


(www.dynamicdrive.com)
//Support for hour minutes and seconds added by Chuck Winrich


([mailto:winrich@babson.edu winrich@babson.edu]) on 12-12-2001
//For full source code, 100's more DHTML scripts, visit





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(2010,10,17,01,5,00)


// 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=" un évènement spécial"
var message_on_occasion="C'est aujourd'hui !"


// 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='640px' // ou une valeur en % comme var


countdownwidth='95%'
var countdownheight='35px'
var countdownbgcolor='#FFEBCD' // ou une couleur en texte comme :


lightyellow
var opentags='<small>'
var closetags='</small>'


////////// NE RIEN EDITER CI-DESSOUS //////////////////


var montharray=new


Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","N


ov","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.getElemen


tById("countdownie") : countdownie
countdown()
}


if (document.all||document.getElementById)
document.write('')


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(open


tags+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(open


tags+"L'évènement est déjà arrivé ! "+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("Il


reste "+opentags+dday+ " jours, "+dhour+" heures, "+dmin+" minutes,


et "+dsec+" secondes avant "+occasion+closetags)
document.countdownnsmain.document.countdownnssub.document.close()
}
else if (document.all||document.getElementById)
crosscount.innerHTML="Il reste "+opentags+dday+ " jours, "+dhour+"


heures, "+dmin+" minutes, et "+dsec+" secondes avant


"+occasion+closetags
}
setTimeout("countdown()",1000)
}
</script><!-- FIN DU SCRIPT COMPTE A REBOURS -->

je n'avais jamais rencontré cela avant et je me demande tout en cherchant cependant si il existe une façon de contourner le problème tout en gardant le script ?
Merci ..

3 réponses

PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
23 oct. 2007 à 17:59
Bonjour,
Ce script marche trés bien à une condition, et pas des moindres, reprendre les lignes qui se sont saucissonées sur plusieurs lignes justement, mais c'est peut être à la copie de la source que le problème c'est produit.
Autre piste, la je te donnes un lien sympa plutôt que de longs discours
c'est par ICI
 
 

;0)
0
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
23 oct. 2007 à 18:02
J'ai oublié de te signaler que tu peux supprimer de "ton" code toutes les parties
if (document.layers)
c'était du exclusif NetScape 4
 ;0)
0
A3nigma64 Messages postés 2 Date d'inscription mardi 23 octobre 2007 Statut Membre Dernière intervention 25 octobre 2007
25 oct. 2007 à 01:03
Hello Petole,

Bien merci beaucoup, effectivement j'ai compris grâce au lien parfait que tu m'as rapporté le problème je l'ai rectifié puis comme tu le mentionné, j'ai complétement épuré le code qui en avait effectivement grand besoin, et du coup on se retrouve vraiment avec un tout petit code pour faire un compte à rebours, en tou cas encore une fois merci, Sujet résolu ..

Bonne continuation ..
0
Rejoignez-nous