Aller au contenu

Sujets conseillés

Posté

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. :)

Posté

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

Posté

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.

Posté

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 ;)

Posté (modifié)

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
Posté

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 ;)

Veuillez vous connecter pour commenter

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



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