UTF-8 ou non ?
Une solution serait de mettre toutes les chaînes en UTF-8, mais cela pose un problème pour une application web telle que SPIP où l’utilisateur peut choisir l’encodage des pages.
Il faut donc trouver une solution universelle, quel que soit l’encodage de la page de destination.
Encodage octal des caractères
J’ai trouvé la solution à ce problème sur le site Clagnut : Accents in alerts.
Il suffit de remplacer les caractères accentués par leur équivalent en octal précédé de \ (anti-slash)
Par exemple :
- é : \351
- è : \350
- ê : \352
- à : \340
La table complète d’équivalence caractère/octal
Une piste à explorer
Un commentaire de la page semble indiquer que :
var y=document.createElement('span');
y.innerHTML='Ménage à trois.';
alert(y.innerHTML);
Permet de faire la conversion automatiquement.
Personnellement, j’ai un doute. Et vous ?