5568 sujets

Sémantique web et HTML

Bonjour,

A ma grande stupéfaction, j'ai réalisé en voulant valider un site dans le validator, que ceci posait un pb :

<script type="text/javascript">

		var phrase1 = 'mon texte <b>html</b> <ul><li>etc</li><li>etc</li></ul>';
		function ecrireDynamiquement(contenu){
			document.getElementById('pole').innerHTML = contenu;
		}
</script>


Le validateur va jusqu'à regarder dans le contenu de variables javascript! Et il n'accepte pas que le string qu'elle contient comporte du code html..

Il me dit :
a écrit :
document type does not allow element "b" here


Je vais essayer d'utiliser un caractère d'échappement juste avant chaque ouverture et fermeture de balise, ensuite dans ma fonction ecrireDynamiquement() je vais les supprimer tout en incorporant la valeur des variables dans le <div>. Je vous tiens au courant mes amis..
Modifié par lineTo (24 May 2007 - 10:32)
Bonjour de manière général, toujours externaliser les scripts Javascript Smiley smile .

<edit>
Ou pour ton cas (modifié suite à la remarque de Julien) :

<script type="text/javascript">
// <!--
// code de ton script ...
// -->
</script>


Julien ... exact Smiley smile Mauvais choix sur les commentaires Javascript Smiley cligne !
</edit>
Modifié par yodaswii (24 May 2007 - 11:06)
Hello,
yodaswii a écrit :
<edit>
Ou pour ton cas :

<script type="text/javascript">
/* <!--
// code de ton script ...
*/-->
</script>

</edit>

Je dirais plutôt Smiley smile :
<script type="text/javascript">
// <!--
// code de ton script ...
// -->
</script>
Julien Royer a écrit :

<script type="text/javascript">
// <!--
// code de ton script ...
// -->
</script>

Salut,
j'aimerais bien connaître la différence avec
<script type="text/javascript">
<!--
code de ton script ...
-->
</script>

si ce n'est que ça met le code js en commentaire.
Modifié par Hermann (24 May 2007 - 13:15)
Hermann a écrit :

Salut,
j'aimerais bien connaître la différence avec
<script type="text/javascript">
<!--
code de ton script ...
-->
</script>

si ce n'est que ça met le code js en commentaire.


Si tu essayes cette syntaxe, ton javascript va essayer d'interpréter <!--. Et il risque de protester Smiley lol

Autre solution, si tu es en XHTML, utilise une section CDATA au lieu des commentaires HTML... Et puis ça fait plus geek Smiley cligne
Gilles a écrit :
Si tu essayes cette syntaxe, ton javascript va essayer d'interpréter <!--. Et il risque de protester Smiley lol

Avec les navigateurs avec lesquels j'ai testé, non. Peut-être avec des navigateurs plus anciens ?
Gilles a écrit :

Autre solution, si tu es en XHTML, utilise une section CDATA au lieu des commentaires HTML... Et puis ça fait plus geek Smiley cligne

Merci mais c'est en fait la syntaxe que j'ai utilisée jusqu'ici:
<script type="text/javascript">
// <![CDATA[
// ]]>
</script>

Mais c'est seulement en prévision d'une supposé evolution vers XHTLM2.0.
De toute façon même IE7 ne prend pas en compte le type mime application/xhtml+xml alors bon...
Et si tu entends Julien, par anciens navigateurs les version 4 et antèrieures,
personnellement je les zappe. Faut quand même pas pousser.
Donc au final j'en reste aux commentaires HTML simples.
Modifié par Hermann (24 May 2007 - 15:38)
Hermann a écrit :
Donc au final j'en reste aux commentaires HTML simples.

Je pense que c'est en effet la meilleure solution tant que tu es en text/html.

Attention par contre à ne pas utiliser les caractères "--" à l'intérieur des commentaires.
Modifié par Julien Royer (24 May 2007 - 16:00)
Julien Royer a écrit :

Je pense que c'est en effet la meilleure solution tant que tu es en text/html.
Attention par contre à ne pas utiliser les caractères "--" à l'intérieur des commentaires.

Ok merci pour l'info.
De toute manière comme dit précédemment, il faut EXTERNALISER les scripts JS, il n'est pas normal de trouver des déclarations de fonctions au sein d'une page en général