Archives par mot-clef : mootools

Vous avez sûrement déjà croisé ce genre de code : (function($){ /*…*/ })(jQuery); Et vous vous êtes sûrement demandé pourquoi il y a jQuery en paramètre pour être du coup re-traduit en $. Qui pourtant vaut déjà $ dans les variables globales. La blague, c’est que de nombreux sagouins ont tendance à coller diverses choses dans leurs sites en plus de jQuery. Du genre du prototype ou encore du mootools. Ou d’autres bibliothèques qui exploitent le $. Donc par sécurité, passer jQuery en paramètre vous assure que dans le corps de la fonction ci-dessus, $, c’est bien jQuery et pas autre chose. C’est d’ailleurs aussi pour ça que vous croiserez des fois ça : (function($, undefined){ /*…*/ })(jQuery); Là c’est pour vous assurer que undefined vaut bien undefined. Si si, j’ai déjà vu des bachibouzouks surcharger undefined …

Certains m’ont dit s’être bien marrés à la lecture de mon précédent article concernant IE 6. Certains pour le style (je les en remercie), d’autres parce que ne comprenant pas pourquoi je me retrouve encore à déboguer une appli web pour IE 6. Je vais donc essayer de vous exposer ici le pourquoi de cette situation de façon plus concrète. Je précise cependant que c’est mon point de vue, basé sur ma courte expérience, et en aucun cas une vérité générale. La quantité de clients Tout d’abord, même sur ce blog, j’ai encore 1% de visiteurs à l’année qui viennent avec IE 6. Je leur souhaite de migrer aussi vite que possible ne serait-ce que pour une version supérieure. Mais ils existent, et je ne peux pas les ignorer. Techniquement, ça représente un investissement. Mais je ne suis pas un pseudo-gourou de la technologie … Continuer la lecture

Soyons clairs, je démarre direct avec ce qui revient le plus souvent. Les messages où je ne prends même plus la peine de lire jusqu’au bout et où je n’envisage même plus de répondre tellement j’en vois. C’est pas hyper sympa de ma part, mais si je dois répondre à tout ça, je peux oublier d’avoir encore le temps d’écrire cette chronique. J’utilise deux jQuery différents mais ça marche pas Oui oui, je vois ce genre de messages environ 3 ou 4 fois par jour, tous flux cumulés. Souvent 1.4.2 et 1.5. Et encore parfois, c’est 3 versions. J’ai le souvenir de 4 versions (genre 1.4, 1.4.1, 1.4.2 et 1.5 de mémoire) une fois mais je ne retrouve pas le post. J’utilise Mootools et jQuery ensemble, est-ce que ça gène si je souhaite aussi utiliser ExtJS Non, après tout, rajoutes y aussi AngularJS, EmberJS, … Continuer la lecture

Il y a peu, dans ma chronique hebdomadaire sur jQuery, je parlais d’un billet de metal3d où il critique ouvertement jQuery. De façon plutôt réfléchie d’ailleurs. Je vais donc répondre ici à son billet. Evidement j’ai choisi de défendre les couleurs de jQuery, mais pas que. Certains de ses arguments ne peuvent être remis en cause puisque cohérents. Dernière précision, dans les commentaires de la chronique, on m’a demandé si ces points avaient été abordés par l’équipe. Honnêtement, je n’en sais rien mais je suppose que oui. Sémantique Premier point abordé, voici deux lignes : $('#element').load(handler); $('#result').load('ajax/test.html'); Le reproche qu’il aborde est assez simple et pour le coup, très justifié. La première ligne est un alias (voir doc) de : .bind('load', handler) Quand à la deuxième ligne, elle sert à charger le fichier ajax/test.html (voir doc). Le problème ici est donc … Continuer la lecture

Salut à tous, Alors pour ceux qui ne suivent pas mon Twitter (ou n’ont rien lu depuis une semaine), je me suis mis à AngularJS et EmberJS pour un projet au boulot mais aussi par plaisir. Les deux technos ont subi un développement en parallèle pendant quelques jours avant de choisir celle avec laquelle on continuera. J’ai la chance d’avoir un chef qui me laisse plutôt les mains libres pour décider de mes technos. C’est rare mais tellement appréciable. Je vais donc vous parler d’AngularJS dans ce billet et je vous ferai un court billet sur EmberJS plus tard. Qu’est-ce que c’est AngularJS ? C’est un framework JavaScript développé et utilisé par Google depuis quelques temps, et qui a été récemment mis à disposition du public sous licence MIT. Qu’est-ce que ça apporte de nouveau, d’intéressant ? La plupart des frameworks … Continuer la lecture

La plus grosse galère quand on développe en JS ou qu’on aide quelqu’un qui code en JS, c’est souvent la lacune en connaissances du langage. La majorité d’entre nous le sait déjà (j’espère) et en fait régulièrement l’amer expérience (je vous le souhaite moins ça). Ce constat est aussi dressé par l’équipe de MooTools qui met en cause aussi l’utilisation devenue trop systématique de leur framework ou encore de jQuery par exemple. C’est pourquoi, l’équipe a décidé de lancer les JavaScript Challenge. Un exercice une fois par semaine pour explorer les tréfonds du langage et en comprendre les subtilités. L’équipe en est déjà à son troisième défi, voici ceux déjà présentés : le premier concerne des spirales ; le second travaille sur la capacité à gérer les actions du visiteur ; le troisième porte sur les graphiques vectoriels. Bons défis !

Je suppose que plusieurs d’entre vous ont déjà remarqué la syntaxe un peu particulière de nombreux frameworks JavaScript. Un bloc commun de plus ou moins grande importance revient systématiquement : (function() { [ … ] })(); jQuery, Prototype, Mootools, ExtJS, Backbone.JS et j’en passe. Auto-exécution C’est ce qui s’appelle l’auto-exécution (self-executed method en anglais). Essayez donc ce code : (function() { alert(‘test’); })(); Vous aurez une alerte avec le message test sans avoir cliqué où que ce soit. Mais pourquoi ? Ma question préférée. Pourquoi ne pas avoir tout simplement fait ça dans ce cas : alert(‘test’); C’est vrai on aurait pu et on aurait eu le même résultat. Sauf que : Isolation Essayons maintenant de faire ça : (function() { var str = « test »; alert(str); })(); alert(str); Là vous aurez une première alerte qui affichera bien test puis selon le … Continuer la lecture

Le site W3Techs, spécialisé dans les statistiques des technologies web, a publié récemment une étude sur la répartition du marché par les différents frameworks Javascript. Continuer la lecture

Voici, pour moi, les 6 règles incontournables pour bien développer en Ajax. Continuer la lecture