Debugging AJAX facile avec Firefox
Par NiKo le dimanche 26 juin 2005, 19:42 - Dev - Lien permanent
Peut-être cette astuce est-elle déjà archie connue de tous, mais moi je suis drôlement content de l'avoir trouvée : je développe beaucoup en AJAX ces derniers temps, et lorsque l'on injecte du contenu dynamique via javaScript dans un élément de l'arbre DOM, il est très difficile de voir le code source HTML du contenu injecté.
Heureusement, Firefox dispose d'un outil fort pratique : la possibilité de voir la source HTML de la sélection (menu contextuel clic-droit sur une selection dans une page). L'avantage de cette fonctionnalité est qu'elle affiche la source du contenu chargé post-traitement, c'est à dire notamment après nos fameuses injections ! D'ailleurs cela marche également avec le contenu généré par javaScript seul 
Ce qui nous donne, en affichant normalement la source de la page :

Si on affiche la selection de la zone chargée dynamiquement :

Une astuce pour afficher rapidement le code source post-traitement d'une page, le focus étant fait sur celle-ci, revient à faire CTRL + A, Clic-droit -> Code source de la sélection.
PS : Les plus observateurs avides de remontrances signaleront que générer des formulaires en javaScript est tout sauf accessible, et ils auront raison. Mais je tiens de suite à préciser qu'il existe une version du site en cours de dev disposant d'une version en html statique 
Edition du 27/06/2005
Je note avec amusement que le code source affiché par la fonction Code source de la sélection modifie le code source original. Je m'explique : admettons que l'on écrive cette portion de code XHTML :
<form name="form1" id="form1" action="./"> <label for="q">Rechercher</label><br /> <input type="text" name="q" id="q" value="" style="background:#eee url(images/bgq.png) no-repeat top left" /><br /> <input type="hidden" name="a" id="a" value="search" /> <input type="submit" name="s" id="s" value="Rechercher" /> </form>
L'affichage du code source de la selection du formulaire affichera :
<form name="form1" id="form1" action="./"> <label for="q">Rechercher</label><br> <input name="q" id="q" value="" style="background: rgb(238, 238, 238) url(images/bgq.png) no-repeat scroll left top; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;" type="text"><br> <input name="a" id="a" value="search" type="hidden"> <input name="s" id="s" value="Rechercher" type="submit"> </form>
On notera que Firefox réinterprète le code source en le formattant à sa sauce, notamment au niveau des styles mais surtout en transformant les balises fermées correctement (<balise />) en balises HTML-like (<balise>). Bon, la validation passe quand même au validateur puisque ce dernier ne vérifie pas les sorties javascript.
Voilà, c'était juste à titre anécdotique en fait ![]()



















Commentaires
1. Le lundi 27 juin 2005, 00:09 par Yazerty
2. Le lundi 27 juin 2005, 09:15 par NiKo
3. Le lundi 27 juin 2005, 15:28 par wildmary
4. Le lundi 27 juin 2005, 16:59 par Yazerty
5. Le mardi 28 juin 2005, 10:49 par Tonio
6. Le mardi 28 juin 2005, 11:56 par solo
7. Le mardi 28 juin 2005, 14:54 par Tonio
8. Le mardi 28 juin 2005, 15:18 par NiKo
9. Le mardi 28 juin 2005, 17:33 par wildmary
10. Le mercredi 29 juin 2005, 12:22 par Tonio
11. Le mardi 12 juillet 2005, 10:32 par solo
12. Le vendredi 30 décembre 2005, 18:10 par manuel