On est en Mars 2008 et je poste mon premier vrai coup de gueule. Celui-ci est adressé aux soit disant designers, développeurs web qui se disent être des professionnels. Y’en a marre des codes javascript de merde que je rencontre dans les design html que je commande chez de tels individus. J’en ai marre des liens html du type :
<a href="javascript:void(0);" onclick="openthis('http://www.amazina.com');">cliquez ici!!</a>
Franchement, je me demande pourquoi on se fait chier à écrire des recommandations ou des tutoriels, pourquoi on s’évertue à indiquer aux constructeurs de navigateurs les bugs que l’on rencontre, si nous même, en 2008 on n’est pas capable d’écrire un lien html avec la bonne syntaxe javascript qui va bien. C’est vrai quoi, avec tous les bons sites de référence sur le net, le designer avec lequel je bosse sur un projet m’a pondu le code ci-dessus sans sourciller. Pour des raisons de déontologie, le code exact a été légèrement retouché 😉 . Finalement je crois que je vais faire comme Dustin Diaz et choisir d’en rire.
Récapitulons rapidement les erreurs de ce code :
javascript:void(0);
: un pourriture qui date de l’aube du html et qui aurait du être enterré en même temps que Netscape 4.0 au minimum;- La présence de
onclick
avec 1 C majuscule : c’est vrai je ne l’ai pas dis mais ce lien m’a était livré avec une DTD certifiant que mon document était du type XHTML 1.0; - cliquez-ici : l’utilisation de ces mots certifiés Web 0.1 beta 3 pour indiquer un lien m’énerve au plus haut point. Si c’est un lien et c’est le cas, c’est pas pour faire joli, c’est pour qu’on clique dessus, donc comme cela coule de source pas la peine d’en rajouter ;
- Si pour une raison X ou Y , le javascript ne fonctionne pas dans le navigateur qui va exécuter ce code, hé bien rien ne se passera lorsque l’on cliquera sur le lien , c’est con n’est pas;
- L’oubli de
return false
dans le onclick : Si un lien est définit dans l’attributhref
, se lien sera de toute manière suivie avec le javascript activé;
Et oui, en moins d’une ligne de html/javascript autant d’erreurs commises par un newbie, boulet, codeur du dimanche ne m’aurais pas fait broncher, mais venant d’une personne payée pour coder et livrer un travail dit professionnel, je trouve cela totalement inacceptable. Je n’y résiste tout de même pas et je vous livre le code revu et corrigé pour la paix de vos âmes :
<a href="http://www.amazina.com" onclick="openthis(this.href); return false">amazina</a>
A bon entendeur salut.
Idéalement, ton code revu et corrigé devrait entièrement externaliser le JavaScript… 😉
Tu as tout à fait raison, mais je voulais un article court et efficace pour mon coup de gueule. Pas un traité de bonne conduite pour “professionnels du web du dimanche”.