Доступен релиз популярной JavaScript-библиотеки jQuery 1.9, используемой на более чем половине из 10 тысяч наиболее посещаемых сайтов в сети. После отказа проекта от практики двойного лицензирования (GPL+MIT) код jQuery теперь распространяется только под лицензией MIT. Большая часть изменений в новой версии связана с проведением чистки кодовой базы и удалением устаревших возможностей. Для обеспечена работы кода, написанного для старых версий jQuery, представлен специальный плагин jQuery Migrate.
Одновременно доступна для тестирования бета-версия jQuery 2.0, функционально полностью эквивалентная jQuery 1.9 на уровне API и отличающаяся прекращением поддержки браузеров Internet Explorer 6, 7 и 8. Поддержка устаревших версий Internet Explorer вынуждала разработчиков использовать множество обходных путей и "хаков", которые в итоге отрицательно влияли на производительность. Удаление устаревшего кода позволило обеспечить более быструю реализацию некоторых функций и сократить размер библиотеки.
Прекращение поддержки ещё находящегося в обиходе выпуска Internet Explorer 8 связано с тем, что несмотря на существенный прогресс в обработке CSS, реализация DOM API в IE8 оставляет желать лучшего и мало чем отличается от IE6 и IE7, поэтому имеет смысл или прекратить поддержку всех трёх версий или продолжать мучиться с поддержкой устаревшего кода. В обозримом будущем поддержка будет обеспечена для обоих веток jQuery, поэтому выбор версии 1.9 и 2.0 зависит от того готовы ли разработчики web-приложений отказаться от поддержки устаревших версий Internet Explorer.
Из особенностей APIjQuery 1.9 и 2.0 можно отметить:
- Значительная модернизацияAPI и прекращение поддержки устаревших функций, таких как .toggle(), .browser(), .live(), .die() и .sub;
- Новый метод .css() для формирования на основе произвольного набора имён CSS-свойств готового CSS-объекта с указанием значений данных свойств. Нарпимер, var dims = $("#box").css([ "width", "height", "backgroundColor" ]); вернёт { width: "10px", height: "20px", backgroundColor: "#D00DAD" };
- Улучшенная поддержка CSS3, учитывающая особенности различных браузеров. Добавлена поддержка селекторов: nth-last-child, :nth-of-type, :nth-last-of-type, :first-of-type, :last-of-type, :only-of-type, :target, :root, :lang;
- Новый метод .finish() для мгновенного завершения всех находящихся в очереди анимаций для указанного элемента;