jQuery 2.0 est disponible : adieu Internet Explorer 6, 7 et 8
Et c'est pas plus mal... (sauf pour quelques-uns)
Le 19 avril 2013 à 15h25
2 min
Logiciel
Logiciel
La version finale de la bibliothèque Javascript jQuery 2.0 est désormais disponible. Comme prévue, celle-ci apporte de nombreuses nouveautés et l'abandon du support des anciennes moutures d'Internet Explorer : les 6, 7 et 8.
L'été dernier, nous évoquions les évolutions à venir au sein de la bibliothèque Javascript jQuery. Elle en était alors à la version 1.8 et préparait l'arrivée des moutures 1.9.x puis 2.0 qui étaient l'occasion d'un grand nettoyage dans le code. Cette dernière est désormais disponible et contient un changement majeur : la fin du support d'Internet Explorer 6, 7 et 8. De quoi soulager l'équipe, mais aussi faire craindre le pire à de nombreux développeurs dont les clients et autres chefs de projets ne sont pas toujours à la page.
Pour autant, pas de panique. Le support de la branche 1.x devrait continuer encore un moment. La version 1.9 dont l'arrivée avait été préparée avec un outil de migration sera d'ailleurs suivie de la 1.10. En fonction des possibilités dont vous aurez besoin, vous pourrez donc utiliser l'une ou l'autre des branches. Vous pourrez aussi laisser la version de votre navigateur choisir en utilisant cette astuce. Pour rappel, Internet Explorer 9, qui est désormais la version minimale supportée par la branche 2.x, est sorti en mars 2011.
Quoi qu'il en soit, voici le code à utiliser pour profiter de cette nouvelle mouture et du plugin facilitant la migration :
Notez que suite au grand nettoyage opéré, le fichier est 12 % plus léger que la mouture 1.9.1. Une amélioration qui aurait encore pu être poussée un peu plus loin, mais c'est désormais le code relatif à Webkit tel qu'il est intégré à Android 2.x qui pose problème. Celui-ci pourrait ainsi ne plus être supporté très bientôt, mais aucune date n'a encore été avancée.
Vous pourrez trouver l'ensemble des corrections et améliorations de jQuery 2.0 au sein de ce billet.
Commentaires (123)
Vous devez être abonné pour pouvoir commenter.
Déjà abonné ? Se connecter
Abonnez-vousLe 19/04/2013 à 15h27
A quand la fin d’Internet Explorer tout court ? " />
Le 19/04/2013 à 15h30
Le 19/04/2013 à 15h32
Le 19/04/2013 à 18h29
Le 19/04/2013 à 18h40
Le 19/04/2013 à 18h41
Le 19/04/2013 à 18h46
Le 19/04/2013 à 18h47
Coté .net il n’y a pas de règles ou je suis….
Comme chacun code “ à sa manière” ca reste une torture d’aller toucher aux trucs des “autres” indépendant de toute refactorisation ou autre typage fort. Le manque d’unité dans la lecture/ structure du code fait mal !
Ca va demander beaucoup de boulot si on veut changer ce passif qui a maintenant plusieurs années.
Le 19/04/2013 à 18h50
Le 19/04/2013 à 18h53
Le 19/04/2013 à 19h05
Le 19/04/2013 à 19h05
Le 19/04/2013 à 19h09
Le 19/04/2013 à 19h13
Le 19/04/2013 à 19h14
Le 19/04/2013 à 19h26
Le 19/04/2013 à 19h33
Le 19/04/2013 à 19h40
Le 19/04/2013 à 17h15
Le 19/04/2013 à 17h19
Le 19/04/2013 à 17h21
Le 19/04/2013 à 17h24
Le 19/04/2013 à 17h25
Le 19/04/2013 à 17h27
Le 19/04/2013 à 17h27
Le 19/04/2013 à 17h30
Le 19/04/2013 à 17h33
Le 19/04/2013 à 17h33
Le 19/04/2013 à 17h35
Le 19/04/2013 à 17h36
hé bien moi je viens du .net et je suis passé à phonegap suite aux besoins du boulot.
Le prototypage ca tue et ca beaucoup d’avantage quand on travaille avec le dom.
Rien on peut travailler correctement si on le veut.
On peut simuler tout les besoin que l’on veut (héritage , interface) si on en sent le besoin .
Mais ca dépendra surtout de ce qu’on veut faire : app mobile , app web, traitement léger ou visuel coté client….
Et pour ces derniers( les traitements partiels coté client) javascript est très bien tel qu’il est. Combien cela représente ?
(perso j’utilise require + jquery + backbone + underscore)
Le 19/04/2013 à 17h40
Le 19/04/2013 à 17h59
Le 19/04/2013 à 18h00
6 et 7 j’aurai pu m’en passer… mais le 8 est de trop, dommage. J’ai encore trop de visiteurs en 8… :(
Le 19/04/2013 à 18h27
Le 19/04/2013 à 20h01
Le 19/04/2013 à 20h24
Le 19/04/2013 à 20h29
Le 19/04/2013 à 20h36
Le 19/04/2013 à 20h42
Le 19/04/2013 à 20h46
Le 19/04/2013 à 20h52
Le 19/04/2013 à 20h58
Je conseille à tous ceux qui disent que JavaScript est un mauvais langage qui n’est pas OO d’aller écouter Douglas Crockford (cherchez sur YouTube).
JS est bien plus OO que Java/C#/C++. La preuve : les classes dans ces langages ne sont pas des objets ! (Ou en tout cas pas des objets comme les autres).
Et puis qu’est-ce qu’une classe ? C’est quelque chose qui prend éventuellement des paramètres et qui fournit des objets (les instances). Ah tiens. Ben c’est juste une fonction quoi. Une classe se réduit à son constructeur. Est-ce que JS a des fonctions ? Oui. Donc tu as des classes. Elles ne commencent pas par le mot-clé class, mais le mot-clé function. C’est tout.
Le 19/04/2013 à 20h59
double post :/
Le 19/04/2013 à 21h14
Le 19/04/2013 à 22h12
DCNS c’est 2,9 Md et non 2900 Md
Le 19/04/2013 à 22h20
Le 19/04/2013 à 23h50
Le 19/04/2013 à 23h57
Le 20/04/2013 à 04h00
Combien de gens sont encore sous IE 8 ?
Le 20/04/2013 à 05h34
Le 19/04/2013 à 16h11
Le 19/04/2013 à 16h18
Le 19/04/2013 à 16h20
Le 19/04/2013 à 16h23
Le 19/04/2013 à 16h28
Le 19/04/2013 à 16h31
Le 19/04/2013 à 16h36
Wheee, chez nous avec la version deux du programme, on va tout passer à support unique sur Chrome, ça va être trôôôôp cool.
Le 19/04/2013 à 16h36
Le 19/04/2013 à 16h38
Le 19/04/2013 à 16h39
Le 19/04/2013 à 16h39
Le 19/04/2013 à 16h40
Le 19/04/2013 à 16h46
Le 19/04/2013 à 16h53
Le 19/04/2013 à 17h01
Typage faible… Ça donne quoi du php/vb/foxpro ? Oui en effet la majorité des applis que j’ai eu à remanier dans ces langages étaient d’une lisibilité, fiabilité et maintenanilite indéniablement coûteuse en énergie et en ressources. Donc je rejoins DTL. La rigueur est une vertu dans ce genre de job.
Le 19/04/2013 à 17h14
Le 20/04/2013 à 17h00
Le 20/04/2013 à 17h19
Pour empêcher les if imbriqués en cascade (quand ce n’est pas nécessaire) à moins d’euthanasier tous les mauvais programmeurs je ne vois pas de solution. " />
Mais là on sort très largement du débat sur le typage d’un langage. " />
Le 20/04/2013 à 18h24
De toute façon c’est logique le non support de IE 6,7,8. Sachant que Windows XP n’a plus de support. Ces 3 versions de navigateur sont destiné à mourir et il est inutile de faire du support pour un OS archaïque qui n’a bientôt plus de support et destiné à mourir.
Et oui les entreprise seront obligé de migrer ce qui est une très bonne chose de couler enfin les part de marché de cet OS antique et ses versions de navigateur totalement dépassé.
Le 21/04/2013 à 01h04
Le 21/04/2013 à 01h33
Le 21/04/2013 à 06h26
Le 21/04/2013 à 08h44
Le 21/04/2013 à 10h56
Le 21/04/2013 à 11h52
Le 21/04/2013 à 14h11
Un mec qui fait du web et n’a jamais touché à du PHP…
Je sens que tu vas devoir euthanasier un paquet de personne. " />
Car n’avoir jamais touché au langage le plus utilisé sur le web c’est comment dire… pas normal. " />
Et un mec qui ne fait pas une vraie batterie (automatisée) de test c’est pareil " />
Le 21/04/2013 à 22h15
Le 22/04/2013 à 05h54
Le 22/04/2013 à 06h24
Le 22/04/2013 à 08h46
Le 22/04/2013 à 08h50
Le 22/04/2013 à 09h31
Le 22/04/2013 à 09h48
Le 22/04/2013 à 09h48
Le 22/04/2013 à 10h27
Le 22/04/2013 à 10h38
Le 22/04/2013 à 11h09
Le 22/04/2013 à 11h21
Le 22/04/2013 à 11h39
Sinon, un petit lien vers le site de jQuery aurait été le bienvenu :-)
Le 22/04/2013 à 12h02
Le 23/04/2013 à 17h22
Le 19/04/2013 à 15h33
Le 19/04/2013 à 15h33
Ca va être tendu de faire l’impasse sur IE8.
Y’a encore beaucoup de WinXP avec IE8 à l’heure actuelle.
Pensez également à bien tester vos anciens scripts, y’a pas mal de fonctions qui ont été “dépréciées” (y’a un terme français pour ça ?).
Le 19/04/2013 à 15h38
Le 19/04/2013 à 15h38
Le 19/04/2013 à 15h39
Le 19/04/2013 à 15h40
Le 19/04/2013 à 15h42
Le 19/04/2013 à 15h46
Mon prochain site web ne prend pas en-dessous d’IE 10. " />
Le 19/04/2013 à 15h46
adieu Internet Explorer 6, 7 et 8
Mouai donc if IE8 = Installer Google Chrome ou Mozilla firefox " />
Comment j’explique ça aux utilisateurs d’intranet avec un parc majoritairement sous Win XP.
Bah faut qu’il débloque un bugdet pour tout changer ça va des PCs de 5 à 7 ans… et 250 postes " />
ça va c’est nous qui allons payer c’est une administration " />
Le 19/04/2013 à 15h48
Le 19/04/2013 à 15h51
Le 19/04/2013 à 15h58
Le 19/04/2013 à 16h00
Le 19/04/2013 à 16h03
Moi, je pige pas ce changement…
L’utilisation de jQuery, c’est surtout, pour moi, pour ne pas avoir à gérer toutes les implémentations merdiques… Supprimer le support des navigateurs supra relou, ça enlève une grosse partie de l’intérêt…
Le 19/04/2013 à 16h09
Le 19/04/2013 à 16h11
Le 20/04/2013 à 07h55
Le 20/04/2013 à 09h05
Le 20/04/2013 à 09h26
Le 20/04/2013 à 09h45
Le 20/04/2013 à 10h21
Le 20/04/2013 à 10h54
IE 7 et 8 abandonnés !!!!
pas prêt d’être utilisée par le pros.
ça va peut être relancer les librairies alternatives dont la mienne " />
Le 20/04/2013 à 11h06
Le 20/04/2013 à 11h07
Le 20/04/2013 à 11h23
Suis-je le dernier sur cette planète a utiliser prototype.js ?
Ce qui m’a toujours rebuté dans jquery, c’est la syntaxe et le nom des méthodes :
\(('').css vs \)(“).setStyle, \(('').html vs \)(”).update() …. y’a pas photo avec jquery on a l’impression d’etre sur lediteurjavascript.com
Le 20/04/2013 à 11h44
Pfiou, que de commentaires et d’amalgames bizarres °o°
Bon alors la POO, c’est un paradigme comme un autre.
Que le langage soit “orienté objet” (en fait pour un langage on devrait dire “orienté classes” pour éviter la confusion) ou orienté prototype, ça n’empêche pas de faire de la programmation orientée objet. Ça n’oblige pas non plus à en faire. Pour vraiment faire de la POO, il y a toute une série de principes à comprendre et respecter, et je vois tous les jours des devs clamant faire de la POO faire n’importe quoi… (code intestable parce que dépendances instanciées direct dans les objets, hiérarchies d’héritages absolument infâmes, race conditions à gogo sur des objets partagés…). Pour moi les classes maniées par un mauvais dev, c’est un outil aussi dangereux qu’un typage dynamique. J’ai vu aussi une mention au fonctionnel: c’est pareil, on peut avoir un “style fonctionnel” de programmation dans n’importe quel langage et tirer parti de l’expressivité qui va avec. Pas besoin d’avoir un langage “orienté fonctionnel” pour faire du fonctionnel, même si ça facilite la vie. (javascript n’est pas vraiment “orienté fonctionnel”, il ne suffit pas d’avoir les fonctions en first classe pour ça. )
Pour moi, un dev se doit d’apprendre proprement un max de paradigmes et constructs, et de comprendre à quoi ils sont bons, de façon à en tirer le meilleur parti.
Au passage, je vous conseille Functional Programming for the Object Oriented Programmer de Brian Marick https://leanpub.com/fp-oo): apprendre les bases du paradigme fonctionnel en réalisant avec, pas à pas, un moteur d’objet, c’est fun, et ça permet de piger pas mal de trucs.
Après, typage faible et dynamique vs fort et statique, c’est un autre souci. Le gros avantage du premier, ce n’est pas juste que votre compilo va vérifier les types, c’est surtout que vous pouvez faire cette vérif à la volée au fil du code et utiliser des outils de productivité et d’analyse qui se basent dessus. Ça, c’est un gain de temps considérable. Mais qui ne vous dispense pas de faire des tests, parce que ça ne choppe pas tout. En fait, le gros problème de certains inconditionnels du statique, c’est de développer un faux sentiment de sécurité et de devenir laxistes alors qu’il reste un tas de truc qui peuvent vous exploser dessus. Surtout si vous les utilisez pour du web, qui est beaucoup plus dynamique par nature.
Ainsi, votre code serveur en web tourne obligatoirement en multi threading, et les erreurs là-dessus, c’est au runtime. Pareil pour les templates des vues: ils comportent des éléments dynamiques qui vous pètent à la tronche au runtime. Les langages mettent à votre disposition des api de reflections, et quand on les utilise (mal), encore une fois, runtime. Etc. Un bon développeur habitué à un langage dynamique, il sait tester là où il faut pour éviter que les trucs ne lui explose au nez, parce qu’il n’a jamais d’autre filet de sécurité que ceux qu’il se crée.
Enfin bref, tout ça pour dire que tout langage a ses avantages et inconvénients, l’important c’est de les connaître, et pour ça il faut pratiquer. Tout pratiquer.
De toute façon, un développeur en langage de plus bas niveau dira qu’on en a tous des petites, parce que lui non seulement il a pas de typage fort, mais il a même pas de garbage collector, et pourtant c’est grâce à son code que le reste tourne…
Vive les trolls xD
Sinon, pour en revenir à la news, je trouve ça cool de la part de jquery de conserver les deux branches. Rappelons pour les SI qui tournent encore avec que le support de windows XP s’arrête bientôt…
Le 20/04/2013 à 12h29
Le 20/04/2013 à 13h43
statique vs dynamique
plsvql vs java
objet vs fonctionnel
jquery vs zepto
backbone vs angular
zend vs php
scala vs groovy
mysql vs mongo
voltdb vs datomic
erlang vs clojure
apache vs nginx
node vs jvm
plates vs hogan
mustache vs pure
_ vs \(
...
bière vs popcorn!
Cette liste fait des kilomètres.
Ces débats sont sans fin et c'est l'expérience du développeur qui détermine ses préférences. Quelqu'un qui vient de java préférera backbone et qqn qui viens de l'html ou sql préférera angular (et qqn de ruby, amber).
JS permet de faire du pseudo fonctionnel et de l'objet, tout ça pour traiter avec du déclaratif (dom, css). C'est assez intéressant. Personnellement, je pense que la partie fonctionnelle de js et plus adaptée à l’événementiel et apte à communiquer avec du déclaratif, que ce soit du relationnel ou la dom. Cette combinaison fonctionnel/déclaratif et moins redondante que le couple objet-déclaratif, car dans ce dernier, il existe forcément un doublon dans la représentation des données. Une fois dans le modèle objet, une fois dans le "repository".
\)(‘option’).show(); travaille directement sur la dom, c’est propre et concis, et je parle pas datomic-clojure, qui brouille les frontières encore plus.
Pour revenir à nos moutons, jquery2 ne supporte plus ie6, mais par contre améliore le support pour les mobiles. Vu la tendance ces jours, c’est une nécessaire pour donner une nouvelle impulsion au développement web mobile.
De plus, node.js est une vague de fond impressionnante, qui permet l’apparition d’outils (code coverage, unit test, automated deployment, modules) qui viennent titiller java dans son jardin pour le développement par de grosses équipes (100+ personnes). jquery2 par son aspect modulaire, peut apporter des choses très intéressantes (surtout par l’intégration de selecteurs xpath/sql nativement, je pense).
Perso je ferai attention à n’utiliser que les fonctions commune aux deux api dans un premier temps, car faut pas pousser pépé quand même!. J’espère juste que la modularité je jquery2 ne va pas trop impacter la compatibilité des plugins.
Le 20/04/2013 à 15h43
Le 20/04/2013 à 16h03
Le 20/04/2013 à 16h26
Je voulais me mettre à JQuery depuis un petit moment.
Mais entre temps, je me suis mis à Dart que j’apprécie beaucoup.
Je vais essayer de voir quels cas d’utilisation conviennent mieux à chaque techno.
Le 20/04/2013 à 16h50
ah mince pas pour XP du coup ça craint pour les projets en entreprise…