Palier au manque de Firebug sous IE et/ou Opera - HTML/CSS - Programmation
Marsh Posté le 25-11-2006 à 11:06:09
ReplyMarsh Posté le 25-11-2006 à 11:34:19
gooopil a écrit : L'idée est très interressante Je vais tester ça un peu plus avant... |
C'est surtout que c'est mieux de faire des console.log que des alert()
Marsh Posté le 25-11-2006 à 13:54:11
ReplyMarsh Posté le 25-11-2006 à 16:51:28
Petit patch vite-fait pour ajouter les multi-arguments à console.log :
http://www.deuxfleurs.org/weberies/consolelog.html
Marsh Posté le 26-11-2006 à 15:53:41
FlorentG a écrit : Gatsu est nommé expert officiel en javascript |
J'aurai du mal à être expert, chui quand même loin d'être une bete en JS
0x90 a écrit : Petit patch vite-fait pour ajouter les multi-arguments à console.log : |
Merci chérie pour l'idéée de séparer en 2 fonctions distinctes. je vais le faire ce soir
Marsh Posté le 26-11-2006 à 16:05:43
si tu fait console.log("<br>" ); ça bug un peu quand même, il escape pas le dump de ce qu'on tape.
Marsh Posté le 27-11-2006 à 09:38:54
Je m'outre devant cette ligne:
Code :
|
C'est absolument a vomir. Et me sors pas le coup du "sinon ça marche pas sous IE" because tu sais très bien que ça marche avec un setAttribute.
Sinon c'est beau
Marsh Posté le 27-11-2006 à 11:08:52
anapajari ->
Citation : |
Code :
|
Marsh Posté le 27-11-2006 à 11:14:55
Ce n'est pas la premiere fois que IE me fait le coup
ce con de IE empêche la modification du type d'un input que ce soit via .type ou un setAttribute les seules méthodes que j'ai trouvé sont de créer directement l'élément via ceci :
document.createElement('<input type="submit">') c'est crade mais ca fonctionne très bien.
si on veut modifier le type d'un input déjà présent dans une page, j'ai aussi une méthode, c'est e changer ton outerHTML
J'ai déjà posté ça sur HFR
Marsh Posté le 27-11-2006 à 11:58:41
gatsu35 a écrit : Ce n'est pas la premiere fois que IE me fait le coup |
Naaan , je sais que tu as déjà posté ça et je te répondrais la même chose que la dernière fois.
Avec IE tu ne peux pas CHANGER le type d'un input, mais tu peux tout à fait l'initialiser en utilisant setAttribute. C'est lié à la façon dont IE construit les inputs dans une page.
Et puis ça change rien à ce que j'ai toujours dit je vois pas dans quel cas tu peux avoir besoin de CHANGER le type d'un input.
Pour prouver ce que je dis ( testé FF et IE6):
Code :
|
Bon sinon j'arrête là car je fais devier un topic de qualitaÿ qui n'en a vraiment pas besoin.
Marsh Posté le 27-11-2006 à 12:04:35
Toute remarque est bonne à prendre et ne fera que remonter la qualitaÿ du topic
Marsh Posté le 25-11-2006 à 10:05:33
Certains d'entre-vous connaissent Firebug qui est une extension firefox extrêmement utile et qui contient une console.
Pour faire du debugage JS, il m'arrive souvent de faire du debug à coup de alert(), maintenant avec firebug il suffit juste de faire un simple
Et le tour est joué.
Pour palier au manque de console sous IE j'ai codé un truc un peu à l'arrache hier. J'ai eu l'idée quand un gus avait codé un truc du même genre mais qui s'ouvrait dans une popup. Et qui ne permettait que le console.log.
Mais, les popups c'est le maaaaalllll, et c'est killé par la plupart des navigateurs
Donc sous IE vous pouvez comme sous Firebug faire :
console.log("pouet" );
console.time("nomdutimer" ) <== lance un temp "nom du timer". (utile pour regarder à quel vitesse s'éxécute un script).
console.timeEnd("nomdutimer" ) <== affiche le temps d'éxécution. (idem pour lire le temps à la fin)
voici le code de la console. J'y ai rajouté une barre de saisie pour taper des fonctions dans la page et voir le résultat.
A noter que :
-sous IE la console se lance dès qu'il y a une erreur de générée, sous Opera c'est la console de Opera qui catche l'erreur
-la console n'apparait que si on fait un console.log();
-le console.log ne permet pas comme firebug de faire : console.log(var1, var2, var3), il faut dans ce cas faire console.log(var1+","+var2+","+var3);
-le console.log transforme le HTML pour l'afficher dans la console, mais si vous voulez laisser le HTML comme du vrai HTML il faut faire : console.log("ma <strong>chaine</strong> HTML",true)
URL de test : http://gatsu.ftp.free.fr/html/consolelog.html
A tester sous :
-IE : tout fonctionne, le catch des erreurs aussi
-Opera : tout fonctionne saus le catch des erreurs
-Safari : pas testé, safari permet le console.log lorsqu'on lui active sa console JS donc j'en sais rien si ca marche
-Firefox : si firebug vous ne verrez pas de console, si pas fierbug vous verrez la console. Pour le catch des erreurs, j'en sais rien j'ai pas testé et j'ai la fleme de tester, et puis c'est inutile, autant installer firebug.
j'attends vos avis et vos demande pour améliorer la bête.
Merci de ne pas me demander de coloration syntaxique
Message édité par gatsu35 le 25-11-2006 à 10:20:56