Bonjour tout le monde,

J'ai un compteur qui fonctionne parfaitement avec Firefox mais pas du tout avec Internet Explorer 8.

J'ai commencé à déboguer et je sais qu'avec IE et FF :

arrivé dans cette fonction :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
function start_countdown()
{
	if (document.layers)
	{
		document.countdownnsmain.visibility="show"
	}
	else if (document.all||document.getElementById)
	{
		alert("here");
		crosscount=document.getElementById&&!document.all?document.getElementById("countdownie") : countdownie
		countdown()
	}
}

il va dans le else if car l'alert JavaScript s'enclenche.

Dans Firefox (FF) il apparaît et se décrémente, avec IE, il n'apparaît pas (pas visible) mais pas d'erreur.

Voici le code de ce compteur, sauriez-vous me dire si vous savez pourquoi il ne fonctionne pas sous IE ?

Merci d'avance.

beegees

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
// JavaScript Document
/*
Count Down - Script
Visit http://rainbow.arch.scriptmania.com/scripts/
 for this script and many more
*/
 
 
function setcountdown(theyear,themonth,theday,thehour,themin,thesec)
{
	/*alert(theyear);
	alert(themonth);
	alert(theday);
	alert(thehour);
	alert(themin);
	alert(thesec);*/
	yr=theyear;mo=themonth;da=theday;hr=thehour;min=themin;sec=thesec
}
 
//////////CONFIGURE THE COUNTDOWN SCRIPT HERE//////////////////
 
//STEP 1: Configure the countdown-to date, in the format year, month, day, hour(0=midnight,23=11pm), minutes, seconds:
setcountdown(2009,06,24,09,00,00)
//STEP 2: Change the two text below to reflect the occasion, and message to display on that occasion, respectively
var occasion=""
var message_on_occasion="La mise a jour des cotes est cloturee."
 
//STEP 3: Configure the below 5 variables to set the width, height, background color, and text style of the countdown area
var countdownwidth='550px'
var countdownheight='35px'
var countdownbgcolor=''
var opentags='<font face="Arial" color="green"><small>'
var closetags='</small></font>'
 
//////////DO NOT EDIT PAST THIS LINE//////////////////
 
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)
	{
		alert("here");
		crosscount=document.getElementById&&!document.all?document.getElementById("countdownie") : countdownie
		countdown()
	}
}
 
if (document.all||document.getElementById('compteur')) //C'est ici que l'on met l'ID du div dans lequle le compteur va se mettre
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+"cotes cltures! "+closetags)
		document.countdownnsmain.document.countdownnssub.document.close()
	}
else if (document.all||document.getElementById)
crosscount.innerHTML=opentags+"Occasion already passed! "+closetags
return
}
//else, if not yet
else{
if (document.layers)
{
	document.countdownnsmain.document.countdownnssub.document.write(opentags+dday+ " days, "+dhour+" hours, "+dmin+" minutes, and "+dsec+" seconds left until "+occasion+closetags)
	document.countdownnsmain.document.countdownnssub.document.close()
}
else if (document.all||document.getElementById)
	crosscount.innerHTML=opentags+dday+ " jour(s), "+dhour+" heure(s), "+dmin+" minute(s) "+occasion+closetags
}
	setTimeout("countdown()",1000)
}