Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/09/2011, 14h50   #1
Membre à l'essai
 
Vanessa RIGOULT
Inscription : février 2011
Messages : 191
Détails du profil
Informations personnelles :
Nom : Vanessa RIGOULT

Informations forums :
Inscription : février 2011
Messages : 191
Points : 22
Points : 22
Par défaut Détecter le navigateur

Bonjour

Quand je lance ce code (sur IE) :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
function varNavig() {
	if ($browser == "IE")
	{
		for (id=1; id<=32; id++){
			document.getElementById("trIE"+id).style.display="block";
			document.getElementById("trSAF"+id).style.display="none";
		}}else{
		for (id=1; id<=32; id++){	
			document.getElementById("trSAF"+id).style.display="block";
			document.getElementById("trIE"+id).style.display="none";
		}}
}
le naviguateur m'indique ce message :
Citation:
Message : Cet objet ne gère pas cette propriété ou cette méthode
Ligne : 82
Caractère : 1
Code : 0
la ligne 82 est celle en rouge
Pouvez vous me dire l'erreur
Merci
Vanessa48 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 14h55   #2
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 040
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 040
Points : 45 141
Points : 45 141
c'est quoi $browser ? elle vient d'ou cette variable ?
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 16h09   #3
Membre Expert
 
Avatar de Eric2a
 
Homme Eric Garidacci
Inscription : septembre 2005
Messages : 1 057
Détails du profil
Informations personnelles :
Nom : Homme Eric Garidacci
Âge : 41

Informations forums :
Inscription : septembre 2005
Messages : 1 057
Points : 1 564
Points : 1 564
Salut,

Sinon côté client, on peut utiliser la compilation conditionnelle.
Code :
1
2
3
/*@cc_on
 {ici code interprété par IE}
@*/
pour détecter que le navigateur est bien IE.

Le code
ie=/*@cc_on1-@*/0;
sera interpreté comme ceci par IE...
ie=1-0;
et pour les autres navigateurs....
ie=0;
Le résultat nous servira d'index pour le tableau ['none','block'] afin d'appliquer les valeurs correctes à la propriété display en fonctions du navigateur.
Code :
1
2
3
4
5
6
7
8
9
10
11
function varNavig(){
	var
		dis=['none','block'],
		ie=/*@cc_on1-@*/0,
		id;
 
	for(id=1;id<=32;id++){
		if(document.getElementById("trIE" +id))document.getElementById("trIE" +id).style.display=dis[  ie];
		if(document.getElementById("trSAF"+id))document.getElementById("trSAF"+id).style.display=dis[1-ie];
	}
}
__________________

N'oubliez pas le vote des messages utiles ainsi que le Tag [Résolu].

Mon Site Web : Corse - Actualité, Météo, Vidéos, Logiciels, ...
Eric2a est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 09/09/2011, 16h19   #4
Membre à l'essai
 
Vanessa RIGOULT
Inscription : février 2011
Messages : 191
Détails du profil
Informations personnelles :
Nom : Vanessa RIGOULT

Informations forums :
Inscription : février 2011
Messages : 191
Points : 22
Points : 22
Elle est dans ce code

Code :
1
2
3
4
5
6
7
8
9
10
11
12
var browserName=navigator.appName; 
if (browserName=="Netscape")
{ 
 $browser ="SAF";
}else{ 
 if (browserName=="Microsoft Internet Explorer")
 {
 $browser ="IE";
  }else{
  $browser ="SAF";
   }
}
Placé avant ma fonction
Vanessa48 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 16h27   #5
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 363
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 363
Points : 1 545
Points : 1 545
Bonjour
Citation:
la ligne 82 est celle en rouge
Pouvez vous me dire l'erreur
Il est rare qu'IE donne le bon numero de ligne dans ses messages d'erreur. D'ailleurs, il n'est question d'aucun objet à cette ligne. M'est avis que l'erreur est ailleurs dans ton code. Safari renvoie-t-il le même genre d'erreur ?
__________________


" La vie c'est quelque chose de très fort et de très beau.... La vie appartient a tous les vivants. It's both a dream and a feeling. C'est être ce que nous ne sommes pas sans le rester. La vie c'est mourir aussi....Et mourir c'est vraiment strong...c'est rester en vie au delà de la mort...Tous ceux qui sont morts n'ignorent pas de le savoir."
(J.C. VanDamme, humoriste et philosophe belge . A moins que ce ne soit l'inverse ...)

Chuck Norris comprend JC Van Damme.
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 16h31   #6
Membre expérimenté
 
Duke Jikel
Inscription : mai 2010
Messages : 340
Détails du profil
Informations personnelles :
Nom : Duke Jikel

Informations forums :
Inscription : mai 2010
Messages : 340
Points : 548
Points : 548
As tu vraiment besoin d'avoir des DIV spécifiques pour IE ?
Et pourquoi ?

Tu n'as pas besoin d'un script qui va cacher des divs pour IE et les afficher pour les autres navigateurs et inversement. Si tu dois faire ça, c'est qu'il y a un grosse problème de conception.

On peut voir le contenu d'un div IE et de son équivalent pour les autres navigateurs ?
Et connaitre le pourquoi du comment d'un tel truc que je trouve moche ?
dukej est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 16h33   #7
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 789
Points : 35 789
Ceci dit, la détection du navigateur est piégeuse car IE n'est pas nécessairement auto-compatible en fonction de ses versions.
Il m'est déjà arrivé d'avoir une page correcte avec IE6 et IE8, mais pas avec IE7. Et avec IE9, on s'approche quand même plus du comportement standard.
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 16h56   #8
Membre à l'essai
 
Vanessa RIGOULT
Inscription : février 2011
Messages : 191
Détails du profil
Informations personnelles :
Nom : Vanessa RIGOULT

Informations forums :
Inscription : février 2011
Messages : 191
Points : 22
Points : 22
Non Safari ne renvoie pas d'erreur
J'ai fait des div spécifiques pour IE et Safari, car elle contiennent des boutons qui activent un lecteur audio

Le lecteur qui marche avec Safari ne marche pas avec IE
Et inversement
Vanessa48 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 17h21   #9
Membre à l'essai
 
Vanessa RIGOULT
Inscription : février 2011
Messages : 191
Détails du profil
Informations personnelles :
Nom : Vanessa RIGOULT

Informations forums :
Inscription : février 2011
Messages : 191
Points : 22
Points : 22
Peut-etre pouvez-vous m'indiquer un lecteur audio compatible IE et Safari ?
cela reglerait le problème
Vanessa48 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 17h34   #10
Membre Expert
 
Avatar de Eric2a
 
Homme Eric Garidacci
Inscription : septembre 2005
Messages : 1 057
Détails du profil
Informations personnelles :
Nom : Homme Eric Garidacci
Âge : 41

Informations forums :
Inscription : septembre 2005
Messages : 1 057
Points : 1 564
Points : 1 564
C'est pour lire du mp3 ?


Si tu utilises HTML5, il y a la balise <audio> (prise en compte par les navigateurs les plus récents).

Il y a aussi les lecteurs Flash JW Player (nécessite une license pour les sites commerciaux) ou Neolao mp3 Player.
__________________

N'oubliez pas le vote des messages utiles ainsi que le Tag [Résolu].

Mon Site Web : Corse - Actualité, Météo, Vidéos, Logiciels, ...
Eric2a est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 18h54   #11
Membre à l'essai
 
Vanessa RIGOULT
Inscription : février 2011
Messages : 191
Détails du profil
Informations personnelles :
Nom : Vanessa RIGOULT

Informations forums :
Inscription : février 2011
Messages : 191
Points : 22
Points : 22
Oui c'est du mp3
j'utilise du HTML 4.01
Vanessa48 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 19h15   #12
Modérateur
 
Avatar de NoSmoking
 
Homme
Inscription : janvier 2011
Messages : 2 944
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : janvier 2011
Messages : 2 944
Points : 4 776
Points : 4 776
essaies quand même de mettre le mot clé var dans la fonction pour déclarer ta variable id en local.
Au passage soigne ton indentation
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function varNavig(){
  var id;
  if( $browser == "IE"){
    for( id = 1; id <= 32; id++){
      document.getElementById("trIE" + id).style.display = "block";
      document.getElementById("trSAF" + id).style.display = "none";
    }
  }
  else {
    for( id = 1; id <= 32; id++){
      document.getElementById("trSAF" + id).style.display = "block";
      document.getElementById("trIE" + id).style.display = "none";
    }
  }
}
NoSmoking est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/09/2011, 09h07   #13
Membre à l'essai
 
Vanessa RIGOULT
Inscription : février 2011
Messages : 191
Détails du profil
Informations personnelles :
Nom : Vanessa RIGOULT

Informations forums :
Inscription : février 2011
Messages : 191
Points : 22
Points : 22
NoSmoking j'ai fais la modif que tu m'indiques et cela na change rien j'ai bien le son avec Safari mais rien avec IE
Vanessa48 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/09/2011, 10h51   #14
Membre à l'essai
 
Vanessa RIGOULT
Inscription : février 2011
Messages : 191
Détails du profil
Informations personnelles :
Nom : Vanessa RIGOULT

Informations forums :
Inscription : février 2011
Messages : 191
Points : 22
Points : 22
L'erreur vient de cette fonction :
Code :
1
2
3
4
5
function liresound (soundFile) {
 
	 document.all.sound.src=soundFile;
 
}
J'ai plusieurs textes à lire de texte1.mp3 à texte9.mp3

Code :
<a href="#" onclick="Ecouter('1');liresound('texte1.mp3')"><img id="ecouterIE" src="img/btn_ecouter.png" /></a>
Comment modifier la fonction liresound et le lien ?
Vanessa48 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/09/2011, 14h46   #15
Membre à l'essai
 
Vanessa RIGOULT
Inscription : février 2011
Messages : 191
Détails du profil
Informations personnelles :
Nom : Vanessa RIGOULT

Informations forums :
Inscription : février 2011
Messages : 191
Points : 22
Points : 22
Je fais ce code :

Code :
1
2
3
function liresound (id) {
	document.getElementById("liresound"+id).src=soundFile;
}
et

Code :
<a href="#" onclick="liresound1('texte1.mp3')"><img id="ecouterIE" src="img/btn_ecouter.png" /></a>
Je n'ai pas de son
Pouvez-vous me dire ou est l'erreur
Merci
Vanessa48 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/09/2011, 15h24   #16
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 363
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 363
Points : 1 545
Points : 1 545
Citation:
Je n'ai pas de son
Pouvez-vous me dire ou est l'erreur
Là :

Citation:
onclick="liresound1('texte1.mp3')"
Il n'y a pas de fonction nommée liresound1()
__________________


" La vie c'est quelque chose de très fort et de très beau.... La vie appartient a tous les vivants. It's both a dream and a feeling. C'est être ce que nous ne sommes pas sans le rester. La vie c'est mourir aussi....Et mourir c'est vraiment strong...c'est rester en vie au delà de la mort...Tous ceux qui sont morts n'ignorent pas de le savoir."
(J.C. VanDamme, humoriste et philosophe belge . A moins que ce ne soit l'inverse ...)

Chuck Norris comprend JC Van Damme.
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/09/2011, 15h27   #17
Responsable JavaScript & AJAX

 
Avatar de vermine
 
Inscription : mars 2008
Messages : 2 690
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mars 2008
Messages : 2 690
Points : 5 760
Points : 5 760
De plus, êtes-vous sûre d'avoir un élément dont l'id est :

?
__________________
Elen Poukram - Isegoria - Sandawe
vermine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/09/2011, 19h22   #18
Modérateur
 
Avatar de NoSmoking
 
Homme
Inscription : janvier 2011
Messages : 2 944
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : janvier 2011
Messages : 2 944
Points : 4 776
Points : 4 776
Citation:
la ligne 82 est celle en rouge
Pouvez vous me dire l'erreur
on est loin du soucis du départ...
NoSmoking est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/09/2011, 09h59   #19
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 363
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 363
Points : 1 545
Points : 1 545
Citation:
on est loin du soucis du départ...
Oui. Sans une vue d'ensemble, on n'y arrivera pas.

@Vanessa48 : poste ton code au complet, on y verra plus clair
__________________


" La vie c'est quelque chose de très fort et de très beau.... La vie appartient a tous les vivants. It's both a dream and a feeling. C'est être ce que nous ne sommes pas sans le rester. La vie c'est mourir aussi....Et mourir c'est vraiment strong...c'est rester en vie au delà de la mort...Tous ceux qui sont morts n'ignorent pas de le savoir."
(J.C. VanDamme, humoriste et philosophe belge . A moins que ce ne soit l'inverse ...)

Chuck Norris comprend JC Van Damme.
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/09/2011, 11h09   #20
Membre à l'essai
 
Vanessa RIGOULT
Inscription : février 2011
Messages : 191
Détails du profil
Informations personnelles :
Nom : Vanessa RIGOULT

Informations forums :
Inscription : février 2011
Messages : 191
Points : 22
Points : 22
Voici mon code complet

Code :
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
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<html xmlns="http://www.w3.org/1999/xhtml xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Cp1252"/>
<script language="JavaScript" type="text/javascript">
var browserName=navigator.appName; 
if (browserName=="Netscape")
{ 
 $browser ="SAF";
}
else 
{ 
 if (browserName=="Microsoft Internet Explorer")
 {
 $browser ="IE";
  }
 else
  {
  $browser ="SAF";
   }
}
</script>
</head>
<script language="JavaScript" type="text/javascript">
function Lire(id)
{
alert(id)	
document.getElementById(id).style.display='block';
}
function Ecouter(id)
{
 
document.getElementById(id).style.display='none';
}
function Sound(id)
{
 
document.getElementById(id).style.display='block';
document.getElementById("ecouterSAF"+id).src="img/btn_ecouter_OK.png";
document.getElementById("lireSAF"+id).src="img/btn_lire.png";
}
function NoSound(id)
{
 
document.getElementById(id).style.display='none';
document.getElementById("lireSAF"+id).src="img/btn_lire_OK.png";
document.getElementById("ecouterSAF"+id).src="img/btn_ecouter.png";
}
 
function liresound (soundFile) {
document.getElementById("liresound").src=soundFile;
document.getElementById("ecouterIE"+id).src="img/btn_ecouter_OK.png";
document.getElementById("lireIE"+id).src="img/btn_lire.png";
} 
function arretsound (soundFile) {
document.all.sound.src="";
document.getElementById("lireIE"+id).src="img/btn_lire_OK.png";
document.getElementById("ecouterIE"+id).src="img/btn_ecouter.png";
} 
function varNavig() {
	var id;
	if ($browser == "IE")
	{
		for (id=1; id<=32; id++){
			document.getElementById("tbIE"+id).style.display="block";
			document.getElementById("tbSAF"+id).style.display="none";
		}
	}else{
		for (id=1; id<=32; id++){	
			document.getElementById("tbSAF"+id).style.display="block";
			document.getElementById("tbIE"+id).style.display="none";
		}
	}
}
</script>
<div data-role="page" data-theme="b">
<div data-role="content" data-theme="b">
<table style="text-align: left">
<tr>
<td Colspan=2>
<img src="image1.jpg" width="100px" height="141.6px"/>
</td>
</tr>
<tr>
<td>
<table id="tbIE1" style="display:none; border: 2px solid red">
<tr>
<td>
<a href="#" onclick="Lire('1');arretsound()"><img id="lireIE" src="img/btn_lire.png" /></a>
</td>
<td>
<a href="#" onclick="Ecouter('1');liresound('texte1.mp3')"><img id="ecouterIE" src="img/btn_ecouter.png" /></a>
</td>
</tr>
</table>
<table id="tbSAF1" style="display:none; border: 2px solid blue">
<tr>
<td>
<a href="#" onclick="Lire('1');NoSound('Sound1')"><img id="lireSAF" src="img/btn_lire.png" /></a>
</td>
<td>
<bgsound id="sound" src=""></bgsound>
<a href="#" onclick="Ecouter('1');Sound('Sound1')"><img id="ecouterSAF" src="img/btn_ecouter.png" /></a>
</td>
</tr>
</table>
<script type="text/javascript">varNavig();</script> 
</td>
</tr>
</table>
<div id="Sound1" style="display:none; text-align: center; height:30px; border: 2px solid red">
<embed id="audio" src="texte1.wav" style="height:30px; ">
</div>
<div id="1" style="display:none; text-align: left;">
	<!—Texte 1 -->
</div>
 
<table style="text-align: left">
<tr>
<td Colspan=2>
<img src="image2.jpg" width="100px" height="141.6px"/>
</td>
</tr>
<tr>
<td>
<table id="tbIE2" style="display:none; border: 2px solid red">
<tr>
<td>
<a href="#" onclick="Lire('2');arretsound()"><img id="lireIE" src="img/btn_lire.png" /></a>
</td>
<td>
<a href="#" onclick="Ecouter('2');liresound('texte2.mp3')"><img id="ecouterIE" src="img/btn_ecouter.png" /></a>
</td>
</tr>
</table>
<table id="tbSAF2" style="display:none; border: 2px solid blue">
<tr>
<td>
<a href="#" onclick="Lire('2');NoSound('Sound2')"><img id="lireSAF" src="img/btn_lire.png" /></a>
</td>
<td>
<bgsound id="sound" src=""></bgsound>
<a href="#" onclick="Ecouter('2');Sound('Sound2')"><img id="ecouterSAF" src="img/btn_ecouter.png" /></a>
</td>
</tr>
</table>
<script type="text/javascript">varNavig();</script> 
</td>
</tr>
</table>
<div id="Sound2" style="display:none; text-align: center; height:30px; border: 2px solid red">
<embed id="audio" src="texte2.wav" style="height:30px; ">
</div>
<div id="2" style="display:none; text-align: left;">
	<!—Texte 2 -->
</div>
 
	<!—Code pour 3 à 10 -->	
	</div>
</div>
J'ai 10 rubriques pour ecouter les texte de 1 a 10
Vanessa48 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h23.


 
 
 
 
Partenaires

Hébergement Web