Bonjour !
J'ai réalisé un diaporama en Javascript qui marche parfaitement sous firefox. Cependant, lorsque je le lance sous Internet Explorer 6, rien ne s'affiche. Auriez-vous une explication s'il vous plaît ? Merci d'avance !
Bonjour !
J'ai réalisé un diaporama en Javascript qui marche parfaitement sous firefox. Cependant, lorsque je le lance sous Internet Explorer 6, rien ne s'affiche. Auriez-vous une explication s'il vous plaît ? Merci d'avance !
boule de cristal boule de cristal... laisse moi deviner le code utilisé ...
Désolé !!
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 <!-- Déclaration des variables--> var numero = 0; var tableau_photos = ["1.jpg", "2.jpg", "3.jpg", "4.jpg", "5.jpg", "6.jpg"]; var timer; var timer1; var timer2; var verif=0; var i; <!-- Fonction pour se déplacer à la photo suivante--> function suivante() { if(numero==tableau_photos.length-1) numero=0; else numero++; document.image_1.src=tableau_photos[numero]; } <!-- Fonction pour se déplacer à la photo précédente--> function precedente() { if (numero == 0) numero=tableau_photos.length-1; else numero--; document.image_1.src=tableau_photos[numero]; } <!-- Fonction pour stoper le diaporama automatique--> function stop_auto() { if (verif==1) clearTimeout(timer); else if (verif==2) clearTimeout(timer1); else if (verif==3) clearTimeout(timer2); verif=0; } <!-- Fonction pour activer le diaporama automatique avec temporisation--> function auto() { if (document.getElementById("temps_1").checked) { verif=1; suivante(); timer = setTimeout("auto()", 2000); } else if (document.getElementById("temps_2").checked) { verif=2; suivante(); timer1 = setTimeout("auto()", 6000); } else if (document.getElementById("temps_3").checked) { verif=3; suivante(); timer2 = setTimeout("auto()", 15000); } } function auto_debut() { if (verif==0) { stop_auto(); auto(); } }
et il te dit quoi IE ?
tu as essayé de placer des alerts à différents endroit pour voir ou ça coince ?
sépare bien tes procédure et conditon
tu l'appelles ou la fonction ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 if(condition){procédure 1} else{procédure 2}
IE ne me dit rien du tout, la page est complètement blanche. Et je n'ai pas essayé pour les 'alert' , mon code est pafaitement correcte car il tourne sous Firefox je ne pense pas que ca donnerait quelque chose. Voila la page XHTML pour que tu puisses voir où j'appelle mes fonctions :
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 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"> <head> <title>Diaporama</title> <script type="text/javascript" src="script_diapo.js"/> <link rel="stylesheet" media="screen" type="text/css" title="noir" href="couleur_diapo.css" /> </head> <body> <div class="center"> <div> <!-- Bouton automatique--> <a href="javascript:;" onmouseover="document.automatique.src='automatique2.gif';" onmouseout="document.automatique.src='automatique.gif';" onclick="auto_debut();"> <img id="automatique" src="automatique.gif" alt="btn_automatique"/></a> <!-- Temporisation--> <div> <input type="radio" name="temps" id="temps_1" value="1" checked="checked"/>Rapide <input type="radio" name="temps" id="temps_2" value="2"/>Normal <input type="radio" name="temps" id="temps_3" value="3"/>Lent </div> </div> </div> <!-- Changement d'image au clique--> <div class="center"> <a href="javascript:;" onclick="suivante();"> <img width="950" height="732" id="image_1" src="1.jpg" alt="Paris"/></a> </div> <div class="center"> <!-- Bouton precedent--> <a href="javascript:;" onmouseover="document.precedent.src='precedent2.gif';" onmouseout="document.precedent.src='precedent.gif';" onclick="precedente();"> <img id="precedent" src="precedent.gif" alt="btn_precedent"/></a> <!-- Bouton stop--> <a href="javascript:;" onmouseover="document.stop.src='stop2.gif';" onmouseout="document.stop.src='stop.gif';" onclick="stop_auto();"> <img id="stop" src="stop.gif" alt="btn_stop"/></a> <!-- Bouton suivant--> <a href="javascript:;" onmouseover="document.suivant.src='suivant2.gif';" onmouseout="document.suivant.src='suivant.gif';" onclick="suivante();"> <img id="suivant" src="suivant.gif" alt="btn_suivant"/></a> </div> </body> </html>
Le problème semble venir de la déclaration du script dans ma page XHTML. En effet, lorsque je l'enlève, ma page s'affiche correctement mais sans de javascript évidemment. Quelqu'un saurait quelle est la syntaxe correcte pour déclarer un script sous IE mais tout en respectant la norme XHTML Strict. Merci !
je ne sais pas si ça peut t'aider mais pour tracer, j'avais trouvé une bibliotheque de fonction javascript libjs qui contient un debug.js très pratique. Il suffit de la linker dans ton source et pour tracer on l'active par Trace.Activer(); puis on fait des traces avec Trace.Ecrire("variable X"+varX+"<br>"); pour surveiller une variable ou tout simplement savoir ou ça plante avec des Trace.Ecrire("1");
Cette fonction affiche une fenetre dans laquelle apparait le trace.
l'adresse : http://perso.wanadoo.fr/aymeric.sabi...t/accueil.html
j'avais ton genre de probleme avec un appel de fonction qui faisait tout planter sous IE et qui marchait parfaitement sous FF a cause d'un appel document.body.scrollTop
IE pas content!!!!!! Pas de balise script auto-fermantes dans IE!!!!!!!Envoyé par solp
Merci mais j'ai trouvé la source du problème. Explorer n'accepte pas l'attribut "name" et il est nécessaire de le remplacer par "id". On utilise ensuite la fonction getElementById dans le script pour accèder à l'élément ! Et pas de balise script auto fermante comme l' a dit denisC!!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager