Forum dédié au moteur de recherche et aux techniques d'optimisation par #taggle
Vous n'�tes pas identifi�.
Voici deux outils très pratique pour ceux qui font souvent du javascript, le premier permet de compresser du code (basé sur les algo de compression standard, il existe une classe PHP du même nom pour ceux qui souhaite faire çà à la volée ) et le second permet de générer un fragment HTML directement en DOM Scripting (via create element) :
http://javascriptcompressor.com/
http://muffinresearch.co.uk/code/javascript/DOMTool/
Du bon tool
Derni�re modification par Seb (28-02-2007 09:38:25)
Hors ligne
à la volé ca me plait bien! génial!! on va pouvoir planquer nos JS
merci Seb
Derni�re modification par pagetronic (28-02-2007 09:39:07)
Hors ligne
Voilà la classe php en question :
http://www.phpclasses.org/browse/package/3158.html
Derni�re modification par Seb (28-02-2007 12:55:54)
Hors ligne
petit bug pour la lib Toolman, je n'arrive pas à la compresser,
j'ai pas testé pour prototype et scriptaculous mais apparemment ca fonctionne et ca l'allège pas mal (51K to 21k pour prototype)
mon fichier js après traitement et rewrite grace à la class :
http://www.forum-foot.info/js/goodies.js
j'ai pas loin de 80k de js sur un autre site, je ferais un retour une fois en place
Derni�re modification par pagetronic (28-02-2007 10:56:40)
Hors ligne
pagetronic a �crit:
petit bug pour la lib Toolman, je n'arrive pas à la compresser,
j'ai pas testé pour prototype et scriptaculous mais apparemment ca fonctionne et ca l'allège pas mal (51K to 21k pour prototype)
mon fichier js après traitement et rewrite grace à la class :
http://www.forum-foot.info/js/goodies.js
j'ai pas loin de 80k de js sur un autre site, je ferais un retour une fois en place
1/ Sans indiscretions, ca donnait quoi, avant la compression ?
2/ Es tu certain que ca marche avec tous les navigateurs ?
Merci
Hors ligne
J'ai testé sous ie6/7, FF et safari çà fonctionne, seulement il y a des problèmes de compression sur certains fragment de code mais j'ai pas encore eu le temps de comprendre pourquoi.
Edit : Faut tester mais en générale çà fonctionne bien.
Derni�re modification par Seb (28-02-2007 12:56:36)
Hors ligne
1/ Ca fonctionne avec IE6-7 et FF
2/
avant :
http://www.forum-foot.info/goodies.js
après :
http://www.forum-foot.info/js/goodies.js
l'économie est pas énorme mais c'est toujours ca de gagné,
et avec la class php+un petit rewrite on s'occupe de rien
Par contre pour la lib prototype et scriptaculous ca me sera très utile
-http://www.footballistique.com/ (pas fais encore)
Hors ligne
je remonte ca parce que c'est de la bombe!
Hors ligne
Oui c'est pas mal comme tools, par contre je remarque que tu utilise script.aculo.us... moi je me suis amusé avec au début mais au final j'ai remarqué c'était un peu trop lourd par rapport aux possibilité qu'il offre, j'ai fini par m'orienter vers un truc plus light (qui intègre aussi prototype) c'est mootools, je te conseil d'y jeter un oeil c'est une bonne lib. assez simple et que je trouve assez complète
Sinon pour en revenir aux tools, l'outil de génération de DOM Scripting, c'est une méthode plus rapidement exécutée sur ie que le innerHTML (bien que cette fonction vienne d'ie) et je trouve cette méthode de codage plus claire. Sinon concernant l'outils de compression je me demande si au final c'est pas un peu bourrin de balancer un gros eval dans le navigateur client... en tout cas, c'est moins lisible après
Derni�re modification par Seb (13-12-2007 12:15:10)
Hors ligne
ouais ben j'ai vite laissé de nouveau tomber
j'ai aussi essayé de gziper mais rien à faire le plus rapide ca reste le non compressé
alors je joue un peu avec les appels de fichier js,
je les tartine long du code et le chargement est pas mal..
Hors ligne
une technique qui fait pas de modification dans le code mais qui compresse et surtout qui rend quand même très peu lisible son truc c'est de placer un fichier par exemple gzip.php dnas le repértoire de vos JS
<?php ob_start("compress"); header("Content-type: text/javascript;"); function compress($buffer) { // remove comments $buffer = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer); // remove tabs, spaces, newlines, etc. $buffer = str_replace(array("\r\n", "\r", "\n", "\t", ' ', ' ', ' '), '', $buffer); $buffer = '/* Javascript code © Toucouleur.fr 2007, All rights reserved. ------------------------------------------------------------------- */ '. $buffer; return $buffer; } ?>
et toujours dans le même répertoire vous mettez un .htaccess avec
AddHandler application/x-httpd-php .js php_value auto_prepend_file gzip.php php_flag zlib.output_compression On
propre efficace, évite les emmerdeurs de base
si vous utilisez un autre nom que gzip.php oubliez pas de changer la seconde ligne du htaccess
ps : utilisé en prod un peu partout, jamais eu aucun pb
Hors ligne
justement, je disais que le gzip ralentit autant et même plus qu'en laissant prototype et scriptaculous tel quel
Hors ligne
Intéressante la technique du gzip je connaissais pas, je testerais pour voir. Sinon pour moi la meilleure méthode de compression pour garder la performance de son js est la méthode de compression de jsmin mais j'ai pas encore pris le temps de tester le truc sur mes js, je l'utilise seulement via la sélection des méthodes de compressions de motools : http://www.mootools.net/download
@laurent : je pense que scriptaculous est lent de base de toute façon, m'enfin çà reste mon point de vue...
Hors ligne
Au moins, prototype/scriptaculous n'est pas un plagia pur et simple des autres cadres de développement javascript.
Hors ligne
J'ai rien contre scriptaculous en sois, juste que je le trouve un peu lourd et pas aussi optimisé que d'autres, plus léger et plus complet.
Hors ligne