Dans le cadre du projet sur lequel je travaille actuellement, le client a émis il y a quelques temps (avant que j'arrive) le besoin d'avoir un champ <select> éditable.
Pour réaliser ceci, je me retrouve avec une fonction javascript qui marche sous IE6 mais pas sous FF 3.6
Je met ci-dessous le code de cette fonction.
Mon but n'est pas que vous recodiez la fonction à ma place, mais plutôt que vous m'expliquiez quelles sont les "bonnes pratiques" en javascript à appliquer à cette fonction pour la rendre plus "stable".
Pas la peine de me dire :
"ton code c'est de la merde" ou des trucs dans le genre
Parce que, ce code n'est pas le mien et qu'avec mes maigres connaissances en JS je me suis rendu compte tout seul que ce code n'était pas très "propre".
ça me reste en travers de la gorge, c'est quoi cette horreur ? ça marche en javascript ? Perso j'ai jamais vu.
Regarde dans le debug JS de firefox si ça cloche pas là dessus.
Sinon les trucs dégueulasses les voilà:
var iframe = document.createElement('<IFRAME src="about:blank" frameborder=0>');
ça ne concerne qu'ie donc on s'en fiche un peu mais bon, c'est atroce.
anOption.onmouseover = highlightSelectBoxOption;
Evènements à la volée, ça fonctionne mais c'est déconseillé !
div.style.width = dest.offsetWidth + 16 + 'px';
En théorie ça devrait passer mais concaténer et en même temps additionner... Je ne sais pas ce que donne la pratique !
var img = document.createElement('IMG');
Les noms en majuscule, bon, moi je le fais pas je trouve pas ça beau mais là on passe à l'esthétique .
La partie "<logic:iterate" etc...C'est du code struts...c'est une sorte de surcouche au HTML/JSP. Par contre, c'est très moche
Je me rends compte que je ne suis pas en mesure (parce que je ne m'y connais pas assez en JS) de corriger/améliorer cette fonction et ça m'énerve un peu...
En gros, pour faire fonctionner cette fonction sous FF, y'a-t-il "beaucoup" de boulot ?
La fonction doit-elle être repensée entièrement ?
Si y'a pas d'accents dans mes messages c'est parce que je suis sur un clavier norvegien :)
Evènements à la volée, ça fonctionne mais c'est déconseillé !
Tu peux expliciter ça ? Je vois pas où est le problème dans son code...
J'ai pas dit qu'il y avait un problème, mais on m'a toujours dit que c'était mieux d'utiliser addEventListener().
Sinon nan il ne doit pas y avoir grand chose à changer, je me répète mais as-tu été voir du côté des erreurs javascript de firefox ?
Ça pourra surement nous aider.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Si y'a pas d'accents dans mes messages c'est parce que je suis sur un clavier norvegien :)
Si y'a pas d'accents dans mes messages c'est parce que je suis sur un clavier norvegien :)