Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Validateur W3C - Erreur javascript

33 réponses
Avatar
Jean Le Brun
Bonjour à toutes et à tous,

Je suis en train de valider la trentaine de pages d'un site perso
http://www.cyranorion.fr/eta_sam/
et une seule d'entre elles (gougle.html) me pose problème.
Comme son nom le suggère elle est censée afficher une carte de France
de Google Maps agrémentée de repères géographiques.
Cette page fonctionne parfaitement bien sous IE et FireFox mais le
validateur du W3C y voit pas mal d'erreurs et en particulier les deux
suivantes :

1 -
line 50 column 88 - Erreur: end tag for element "B" which is not open

dans la ligne :
GEvent.addListener(marker,"click", function() { var myHtml =
"<b>" + etab + "</b>"+"<br />" + info; map.openInfoWindowHtml(latlng,
myHtml); });

2 -
line 54 column 86 - Erreur: end tag for element "A" which is not open

dans la ligne :
map.addOverlay(createMarker(point, 1, "Gérard Denjean", "<a
href=#1>Détails</a>"));


Dans les deux cas, qu'il s'agisse de la balise <b> ou de la balise
<a>, il n'en détecte que la fermeture.
J'ai essayé d'utiliser la balise :
//<![CDATA[xxxxxxxxxxxxxxxxxxxxxxxxxxxxx//]]> pour "encapsuler" les
paramètres qui posent problème mais ne suis arrivé à rien de bon.

Comme en plus le validateur ne voit pas la balise de fermeture
(pourtant bien présente) d'une "table", je soupçonne un coup fourré
situé ailleurs ... mais où ?

J'ai trouvé une foule de messages approchants, du style conflit html
xml et utilisation de CDATA, mais aucun identique au mien.

Quelqu'un a-t-il sur ce forum déjà vu un cas analogue ?

Merci de m'avoir lu.
Cordialement,
jean
--

10 réponses

1 2 3 4
Avatar
Sergio
Olivier Masson a écrit :

<script type="application/javascript">
alert('IE8 ne fera rien');
</script>



En effet ! Vous êtes des boulets les gars ! J'ai modifié ça tout à
l'heure, puis j'ai continué pour p'tit boulot, et puis j'ai vérifié sous
IE : plus rien ne fonctionnait sans toutefois signaler d'erreur.
J'ai cherché 20 minutes où j'avais m#rdé ! On m'y reprendra à vouloir
faire tel que le souhaite les RFC tiens !



Donc au diable la norme ! Un <script> tout nu, sans paramètres, ça marche ?

--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org
Avatar
Olivier
Le 16/02/2010 11:15, Olivier Miakinen a écrit :
[...]
J'avoue que je procédais toujours par
copier/coller sans me poser de question, mais suite à ta question je
viens de trouver ça :



Ça c'est original le copier/coller d'un truc déjà fait. ;)


P.-S. : Tu ne voudrais pas mettre un nom, ou au moins une initiale si
elle est différente de M, afin de te différencier des quelques Olivier
qui sévissent ici ? ;-)



Voui, c'est une idée. Le "B", y en a peut être pas... on verra bien.

--
Olivier B

<http://www.usenet-fr.net/fur/usenet/repondre-sur-usenet.html>
Avatar
Olivier
Le 16/02/2010 15:39, Laurent vilday a écrit :
[...]
Que nenni, les IEs (toutes versions confondues je pense) n'aiment pas du
tout type="application/javascript".



C'est drôle, ça m'explique enfin pourquoi le javascript que je faisais
ne fonctionnait pas pour ie ! :)
J'avais contourné le problème en ne servant pas le js aux ie (je
n'avais pas cherché). Et je vais continuer.

--
Olivier B

<http://www.usenet-fr.net/fur/usenet/repondre-sur-usenet.html>
Avatar
Pierre Goiffon
On 16/02/2010 17:39, Sergio wrote:
<script type="application/javascript">
alert('IE8 ne fera rien');
</script>





Donc au diable la norme ! Un <script> tout nu, sans paramètres, ça marche ?



L'attribut type est obligatoire sur la balise script :
http://www.w3.org/TR/html4/interact/scripts.html#edef-SCRIPT
Avatar
Olivier Miakinen
Le 16/02/2010 16:21, Olivier Masson répondait à Laurent Vilday :

À mon humble avis, les navigateurs actuels s'en foutent. Ils acceptent
des<script language="javascript">, et je ne serais pas autrement
surpris que<script> tout seul suffise.



Que nenni, les IEs (toutes versions confondues je pense) n'aiment pas du
tout type="application/javascript".

<script type="application/javascript">
alert('IE8 ne fera rien');
</script>





Dont acte. Au passage, j'aimerais bien savoir comment le premier Olivier
(donc ni toi ni moi) a entendu parler de ce type MIME officiel mais
encore peu répandu.

En effet ! Vous êtes des boulets les gars ! J'ai modifié ça tout à
l'heure, puis j'ai continué pour p'tit boulot, et puis j'ai vérifié sous
IE : plus rien ne fonctionnait sans toutefois signaler d'erreur.
J'ai cherché 20 minutes où j'avais m#rdé ! On m'y reprendra à vouloir
faire tel que le souhaitent les RFC tiens !



:-D
Avatar
Olivier Miakinen
Le 16/02/2010 23:25, Olivier a écrit :

P.-S. : Tu ne voudrais pas mettre un nom, ou au moins une initiale si
elle est différente de M, afin de te différencier des quelques Olivier
qui sévissent ici ? ;-)



Voui, c'est une idée. Le "B", y en a peut être pas... on verra bien.



Euh... je ne parlais pas de la signature, dont tout le monde se fout,
mais de l'identité dans le champ From, identité reprise automatiquement
dans la ligne d'attribution « Machin a écrit » !

Cordialement,
--
Olivier Miakinen
Avatar
Olivier Miakinen
Le 18/02/2010 12:16, Pierre Goiffon a écrit :

L'attribut type est obligatoire sur la balise script :
http://www.w3.org/TR/html4/interact/scripts.html#edef-SCRIPT



Dans HTML 4, oui. Mais toutes les pages ne sont pas conformes à HTML 4,
et jusqu'à preuve du contraire les scripts avec language="Javascript"
fonctionnent dans tous les navigateurs.


Tiens, histoire de te faire bondir :
http://www.commentcamarche.net/contents/javascript/jsintro.php3

On y lit :
----------------------------------------------------------------
Les balises annonçant un code Javascript sont les suivantes :

<SCRIPT language="Javascript">

Placez ici le code de votre script
</SCRIPT>
----------------------------------------------------------------

Mais aussi :
----------------------------------------------------------------
Dernière modification le mardi 14 octobre 2008 à 17:40:36
----------------------------------------------------------------
Avatar
Sergio
Olivier Miakinen a écrit :

Tiens, histoire de te faire bondir :
http://www.commentcamarche.net/contents/javascript/jsintro.php3

On y lit :
----------------------------------------------------------------
Les balises annonçant un code Javascript sont les suivantes :

<SCRIPT language="Javascript">

Placez ici le code de votre script
</SCRIPT>



Cette syntaxe a le gros avantage de pouvoir préciser la version du langage :

<SCRIPT language="Javascript 1.1">

voire :
<SCRIPT language="vbscript">

D'ailleurs, à l'intention des pondeurs de normes, pourquoi utiliser "javascript", alors que le langage normalisé est l'ECMAScript ?

--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org
Avatar
Pierre Goiffon
On 18/02/2010 16:10, Olivier Miakinen wrote:
L'attribut type est obligatoire sur la balise script :
http://www.w3.org/TR/html4/interact/scripts.html#edef-SCRIPT



Dans HTML 4, oui. Mais toutes les pages ne sont pas conformes à HTML 4,
et jusqu'à preuve du contraire les scripts avec language="Javascript"
fonctionnent dans tous les navigateurs.



Mhh... J'avais eu quelques mélangeage de pinceaux massifs il y a 2-3
lors du travail de fond sur l'interface Web de notre produit... Je me
souviens dans un grand brouillard avoir lu qu'en mode strict IE était
plus tatillon, mais je ne me souviens plus bien précisément si c'était
avec le type dans script ou dans style ? Je crois que c'était script,
car il y avait une alternative au standard (qui pouvait être la lecture
de vbscript plutôt que jscript ??)

En tout cas, faire un <script type="text/css"> (ce que j'ai fait
plusieurs fois, tête en l'air que je suis) provoque des résultats qui
peuvent surprendre, jusqu'à ce que l'on comprenne sa bétise :)

Et d'ailleurs, si <script language="javascript"> va je pense sans aucun
doute fonctionner partout, <script> donc sans aucun attribut... pas sûr
que ça soit toujours bien lu ?
Avatar
Pierre Goiffon
On 18/02/2010 17:27, Sergio wrote:
Cette syntaxe a le gros avantage de pouvoir préciser la version du
langage :

<SCRIPT language="Javascript 1.1">



Mhh, je pense qu'il est bien plus préférable de faire des if
(document.all) par exemple non ?
1 2 3 4