Aller au contenu

Javascript et entités HTML


20cent

Sujets conseillés

Bonsoir,

Question toute bête : comment passer une entité HTML ("→" dans mon exemple) dans du code javascript ?

Mes essais restent infructueux. :mellow:

<!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" lang="fr" xml:lang="fr">
<head>
 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-15" />
 <title></title>
 <script type="text/javascript">
 function fleche()
 {
   div = document.getElementById("test");
   texte = document.createTextNode("→");
   div.appendChild(texte);
 }
 window.onload = function()
 {
   fleche();
 }
 </script>
</head>
<body>
 <div id="test"></div>
</body>
</html>

Merci d'avance pour vos réponses. :)

Lien vers le commentaire
Partager sur d’autres sites

Si je ne m'abuse, le Javascript ne connait pas les entiés HTML, il faut tout écrire tel quel (les accents, les guillemets, les caractères bizarres, etc.).

Donc, il faut que écrives ta flèche tel quel.

2 solutions:

  • tu la tapes directement sur le clavier
    • sous Mac OS X: depuis n'importe quelle appli -> "Édition">"Caractères spéciaux"
    • sous Windows ou Linux: aucune idée (désolé) :blush:

    [*]tu écris une page html quasi-vide avec ton → à l'intérieur et tu copies-colles

Lien vers le commentaire
Partager sur d’autres sites

Déjà testé mais... pas dans un éditeur supportant l'unicode ! :blush:

Je vais tester ça dès ce soir, je pense que ça devrait le faire au final.

Merci.

Lien vers le commentaire
Partager sur d’autres sites

Tu peux également "échapper" les caractères en unicode

 texte = document.createTextNode("\uXXXX");

où XXXX est le code unicode que tu peux normalement trouver ici si je ne me suis pas une fois de plus embrouillé les pinceaux ;)

Lien vers le commentaire
Partager sur d’autres sites

Tout à fait d'accord avec Xavier, a priori, le code suivant doit marcher:

<!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" lang="fr" xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-15" />
<title></title>
<script type="text/javascript">
 function fleche()
 {
  div = document.getElementById("test");
  texte = document.createTextNode("\u2192");
  div.appendChild(texte);
 }
 window.onload = function()
 {
  fleche();
 }
</script>
</head>
<body>
<div id="test"></div>
</body>
</html>

Plus compliqué à utiliser que le site donné par Xavier, mais très complet, ce site (en anglais) donne de nombreux détails sur les caractères Unicode...

A+ :)

Modifié par Eclipsis
Lien vers le commentaire
Partager sur d’autres sites

C'est très joli, ça se dégrade bien sans Javascript et/ou sans CSS, juste le fait que le code est un peu alourdi par le CSS et le javascript qui feraient mieux d'être externes, mais franchement bravo ;)

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...