GRATUIT

Vos offres d'emploi informatique

Développeurs, chefs de projets, ingénieurs, informaticiens
Postez gratuitement vos offres d'emploi ici visibles par 4 000 000 de visiteurs uniques par mois

emploi.developpez.com

jQuery 1.8 b1 est disponible

Le , par danielhagnoul, Rédacteur
jQuery est utilisé par 50 % des grands sites du web, mais les navigateurs et les appareils sur lesquels il fonctionne ont beaucoup changé depuis 6 ans. De même, la manière et les outils pour concevoir un site web se modifient rapidement. jQuery doit s'adapter en permanence à son environnement.

Comme il en a été décidé lors de la sortie de la version 1.7, l'équipe de développement se pose maintenant en permanence les questions : « Cet ajout est-il indispensable ? Que peut-on supprimer ? » De nouvelles obsolescences ont été ajoutées à la liste des obsolescences annoncées à l'époque.

Ces questions sont cruciales dans le domaine des appareils mobiles, jQuery doit mettre à la disposition du développeur ce dont il a vraiment besoin sans lui imposer la présence de fonctions inutiles. L'équipe de développement pense que le meilleur juge de ce qui vous est indispensable c'est vous ! Comme il avait été annoncé, le code de jQuery est maintenant réparti dans différents modules. Ben Alman a construit un outil qui vous permet de générer une version personnalisée de jQuery à partir du dépôt de code Github. Vous avez pour l'instant la possibilité d'exclure un ou plusieurs modules dans la liste suivante : ajax, css, dimensions, effects, et offset. Mais cet outil est optionnel, jQuery continuera à être diffusé sous la forme d'un fichier universel par les serveurs de code.

La version 1.8 ajoutera automatiquement au code, en fonction du navigateur utilisé pour afficher la page web, le préfixe propriétaire à une propriété CSS non standard. Par exemple, sur Chrome, $("#myscroll").css("marquee-direction", "backwards") sera automatiquement transformé en $("#myscroll").css("-webkit-marquee-direction", "backwards").

Le fouillis des fonctions d'animations a été nettoyé, rationalisé et amélioré par l'ajout d'extensions. Seul point noir, la nouvelle documentation des fonctions d'animations n'a pas été terminée avant la sortie de la version b1. Il est possible de se passer du module contenant les fonctions d'animations si vous ciblez uniquement les nouveaux navigateurs et les transitions CSS.

Le sélecteur jQuery, $( ... ), a été largement réécrit et optimisé. L'amélioration des performances est notable tant pour les sélecteurs communs que pour les sélecteurs complexes.

Pour améliorer la sécurité et éviter l'injection de script dans un sélecteur jQuery, il est recommandé d'utiliser la nouvelle méthode $.parseHTML pour inclure du HTML dans une page web.

Les codes existants, s'ils ne sont pas mis à jour pour prendre en compte les nombreuses modifications du code des nouvelles versions de jQuery, ne fonctionneront probablement plus sans le plugin de compatibilité qui sera bientôt disponible sur le dépôt de code Github. L'utilisation de ce plugin de compatibilité en production n'est bien entendu pas une solution viable à long terme.

Pour la liste complète des corrections, changements et modifications, voir l'article source.

Serveur de code : http://code.jquery.com/jquery-1.8b1.js
Source : blog officiel


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de alex_vino alex_vino - Membre émérite http://www.developpez.com
le 26/06/2012 à 14:23
Pour le moment j'aime bien ceci:
$("#myscroll").css("marquee-direction", "backwards") sera automatiquement transformé en $("#myscroll").css("-webkit-marquee-direction", "backwards")

Mais cela figure dans les brouillons du W3C donc tous les navigateurs devront bientot le convertir eux-meme (enfin!).

J'aime aussi le fait de pouvoir télécharger seulement quelques modules, a l'image de jQuery UI.
Avatar de BPiero BPiero - Membre actif http://www.developpez.com
le 28/06/2012 à 10:04
Citation Envoyé par alex_vino  Voir le message
J'aime aussi le fait de pouvoir télécharger seulement quelques modules, a l'image de jQuery UI.

Moi aussi, mais bon, le seul problème c'est qu'en général j'utilise plus ou moins tout. C'est certainement une mauvaise habitude, c'est juste qu'on a tout sous la main, alors du coup on utilise puisque c'est là. On verra quand ce sera stable, mais c'est peut-être l'occasion de revoir la manière dont on code avec jQuery.

Deux questions subsidiaires:
Peut-on les charger à la volée (avec yepnope) ?
Quelqu'un sait où trouver la correspondance fonctions/modules ?

@+
Piero
Avatar de alex_vino alex_vino - Membre émérite http://www.developpez.com
le 28/06/2012 à 13:51
Citation Envoyé par BPiero  Voir le message
Moi aussi, mais bon, le seul problème c'est qu'en général j'utilise plus ou moins tout. C'est certainement une mauvaise habitude, c'est juste qu'on a tout sous la main, alors du coup on utilise puisque c'est là. On verra quand ce sera stable, mais c'est peut-être l'occasion de revoir la manière dont on code avec jQuery.

Deux questions subsidiaires:
Peut-on les charger à la volée (avec yepnope) ?
Quelqu'un sait où trouver la correspondance fonctions/modules ?
Piero

Oui il faudra changer un peu ses habitudes, mais c'est normal.
Tout ce que tu as l'habitudes d'utiliser devrait se trouver dans la bibliotheque "Core", qui devra etre obligatoirement téléchargée pour toute utilisation de jQuery.
J'imagine que la documentation spécifiera bien quelle fonction nécessite quel fichier. De toute maniere dans la console de ton navigateur en voyant que la fonction jQuery n'est pas déclaré cela peux signifier que ton fichier n'est pas téléchargé.

Je penses aussi qu'on pourra les charger a la volée, il n'y a pas de raison.
Avatar de danielhagnoul danielhagnoul - Rédacteur http://www.developpez.com
le 30/06/2012 à 21:16
Ben Alman a construit un outil qui vous permet de générer une version personnalisée de jQuery à partir du dépôt de code Github. Vous avez pour l'instant la possibilité d'exclure un ou plusieurs modules dans la liste suivante : ajax, css, dimensions, effects, et offset.

Cette possibilité ne m'intéresse pas, mais après un rapide coup d'oeil sur la documentation de l'outil, son utilisation me semble bien complexe https://github.com/cowboy/grunt

Voir aussi le fichier readme : https://github.com/jquery/jquery/blob/master/README.md
Avatar de BPiero BPiero - Membre actif http://www.developpez.com
le 05/09/2012 à 14:12
Citation Envoyé par danielhagnoul  Voir le message

@daniel
Merci,
Moi non plus ça ne m'intéresse pas, mais pour des raisons différentes:
En lisant le readme, je me suis rendu compte qu'on ne pourra pas l'utiliser de façon modulaire avec yepnope, car il semblerai que pour chaque version personnalisée de jquery, ça inclue le core
J'ose même pas imaginer ce que ça ferai si on post-chargeai les modules .
Pour en revenir au bien-fondé de la modularité des fichiers js (et accessoirement, mais pas au même niveau: les css), j'étais avant de ton avis: Rien ne vaut un bon gros fichier bien mis en cache. Avant, c'était quand on ne faisait pas une utilisation aussi intensive du js et css, c'était quand les fichiers js et css étaient chargés au même moment que la page, c'était avant que je n'utilise yepnope et modernizr. Aujourd'hui je dois bien avouer que le vieux combat "- de requêtes VS - de données" (que j'estimais remporté par - de requêtes pour un chargement plus rapide de la page) est devenu obsolète. En effet, si on post-charge ces fichiers à la demande ça n'est plus un problème, du moins du point de vue utilisateur, au contraire le temps de chargement initial de la page est réduit, et le temps de chargement général également, vu qu'on ne charge que ce dont on a besoin. Malheureusement je pense que pour les serveurs et le web en général, une solution à la jqueryUI vers laquelle semble se diriger jquery (build de sa propre version), est moins optimisée que la solution dont je rêve: chaque module (en considérant que le core en est un) dispo séparément sur un cdn commun à tous les sites.
Pour terminer sur une note d'espoir, gageons que ces travaux sur la modularité soient les prémices d'une vraie modularité de jquery utilisable avec yepnope.
@+
Piero
Offres d'emploi IT
Ingénieurs d'études expérimentés webMethods ou Tibco
COOPTALIS - Nord Pas-de-Calais - Lille
Développeur web e-commerce php/jquery
solucia - Nord Pas-de-Calais - Lille (59000)
Chef de projet web H/F
MENWAY TALENTS - Nord Pas-de-Calais - VILLENEUVE-D'ASCQ

Voir plus d'offres Voir la carte des offres IT
Responsable bénévole de la rubrique Développement Web : Xavier Lecomte -