prototype JS v1.5

Posté le mercredi 31 janvier 2007 à 14 h 44, Read it in english with Google

La nouvelle version du framework javascript prototype a été lancé il y a une dixaine de jours à peu près en meme temps que leur nouveau site : prototypejs.org

J’√©tait partie m√©content de cette nouvelle version, car, pour commencer, lorsque j’ai remplacer l’ancienne par celle ci dans mes scripts existants, beaucoup de fonctionnalit√© ne marchaient plus… Ils semblent qu’ils aient impl√©ment√© beaucoup de nouvelles fonctions puissantes mais qui diff√®res l√©g√®rement des fonctions originales.

Pour un exemple commun, je vais prendre la méthode Ajax.Request()

new Ajax.Request(
  monurl,
  {
    method:'post', //facultatif : post par default
    parameters: 'param1=montexturlencod√©&param2=mon2emetexturlencod√©'
  }
);

Maintenant si l’option parameters qui vous permet d’envoy√© le contenu n’est pas un object, la class va se charger de le transformer en object :
ici ce sera : {param1: ‘montexturlencod√©’, param2: ‘mon2emetexturlencod√©’}
puis avant l’envoie, le script va retransformer parameters pour en faire une chaine urlencoded donc vos param√®tres seront doublement urlencod√© si vous les aviez d√©j√† encod√© avant.

Autre chose aussi, si vous utilisiez le param√®tre bien pratique ¬ę¬†_¬†¬Ľ qui √©tait envoy√© auparavant en utilisant cet m√©thode, et bien vous ne pourrez plus car il a √©t√© enlev√© pour la majorit√© des navigateurs.

Les √©l√©ments input avec la propri√©t√© disable activ√© renverront une valeur vide lorsque l’on utilisera la m√©thode Form.Element.serialize() ou ne seront pas inclue lors d’un apel √† Form.serialize(). C’est conforme au W3C, les √©l√©ments d√©sactiv√© ne sont pas envoy√©… meme si √ßa m’emb√®te profond√©ment vu que je d√©sactivais tout mes input avec de faire un envoie via ajax, √ßa fesait classe, moins maintenant…

Une fonction qui va par contre vous changer la vie, c’est la fonction CSS selector $$(), j’en ai d√©j√† parl√© dans un pr√©c√©dent sujet. Mais √† ma grande surprise il prend aussi en compte le CSS 2 !!! Tout simplement magnifique. Mais √† utiliser avec mod√©ration vu la puissance qu’elle demande.

Je ne vais pas vous faire la liste de toutes les modifications maintenant mais je tacherais de mettre la pluspart des différences et améliorations que je remarque.

Mais j’ai oubli√© quelque chose, maintenant il y a surtout, un grand merci, oui vous ne r√©vez pas : la documentation officielle !!! ūüėÄ

Laissez un commentaire :