Bonjour,
Mes connaissances en programmation portent plus sur WBScript et Visual Basic Pro et Application. La conception de site WEB n'est pas vraiment mon domaine de compétence encore moins le langage JavaScript.
Par avance, merci de votre indulgence ! Il me faut mettre les mains dans le cambouis et apprendre une syntaxe différente.
J'ai lu avec intérêt différents tuto HTML/ JavaScript, en faisant plus confiance à votre site qui colle à l'actualité. Je constate que le langage JavaSript semble, au fil des ans, évoluer très vite et abandonner la compatibilité montante (fonctions devenant obsolètes ou en passe de le devenir).
Mon Boss ayant eu connaissance d'une instruction notée "deprecated" dans JavaScript 1.5, en l'occurrence "unescape" actuellement utilisée dans son code HTML, il me demande de me pencher sur le codage / décodage des chaines de caractères sur des pages n'utilisant que HTML5 (soit disant respectant la norme W3C ce qui semble exact selon site test trouvé) et Javascript… Il est totalement réfractaire à l'utilisation du PHP !
A la découverte du codage existant, je présume que la problématique se situera niveau fichier "ListeRef.js" contenant un tableau imbriqué dans une fonction JavaScript.
Ce qui me choque (mais est-ce Vrai ou Faux ?) est que ce tableau soit importé "en l'état" dans le HTML pour servir, à la fois à créer dynamiquement des titres dans la page HTML et aussi d'URL pour accès à une autre page HTML. Noter que le contenu est actualisée via par un programme WBScript puis le fichier est mis en ligne.
Or, les informations sont au format Windows ANSI. De fait ce dernier peut contenir tous les caractères français dont accents et autres signes type parenthèses. Je peux revoir ce point mais je pense que la solution doit être mise en œuvre au niveau de la page HTML pour un investissement durable …
Pour analyse : Voici un exemple (factice) du fichier de données ListeRef.js
Et voici une synthèse partielle du fichier Index.html
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 function MyListe() { // ================================================================================ // Insérer ici références // ================================================================================ tabTxt[0] = "Céline (haut)/120102"; tabTxt[1] = "Robe à fleurs/1002103"; // ================================================================================ }
Question :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title>Version 2.20.1</title> <script src="../../ListeRef.js" type="text/javascript"></script> <link rel="stylesheet" type="text/css" href="css/index_styles.css" /> </head> <body> <script type="text/javascript"> // Charger Liste tabTxt = new Array(); MyListe(); // Afficher Menu appelle un code JavaScript externe qui traite les chaines du tableau pour lecture voire également comme URL AfficherMenu(); </script> </body> </html>
Ne devrait-on pas encoder le texte brut (encodeURI() ?) au lieu de le travailler "en l'état" avant de le "balancer" dans la page HTML puis utiliser decodeURI() pour l'affichage en clair et decodeURIComponent() pour une URL ?
En outre dans le code HTML peut-on conserver un charset windows-1252 ou préférer utiliser UTF-8 avec les instructions ci-dessus ?
L'informatique reste, pour moi, la science de la modestie. Merci de vos précieuses remarques et / ou critiques à venir. Peut-être ai-je zappé sur certaines informations présentes sur votre site …
Bonne fin de journée,
Partager