Выпуск свободной JavaScript-библиотеки jQuery 2.0

Анонсирован релиз популярной JavaScript-библиотеки jQuery 2.0, используемой на более чем половине из 10 тысяч наиболее посещаемых сайтов в сети. После отказа проекта от практики двойного лицензирования (GPL+MIT) код jQuery распространяется только под лицензией MIT. Версия jQuery 2.0 по числу нововведений, функциональности и API полностью аналогична выпуску 1.9. Отличие заключается в прекращении поддержки браузеров Internet Explorer 6, 7 и 8, а также сопутствующими оптимизациями и упрощением кодовой базы.

Поддержка устаревших версий Internet Explorer вынуждала разработчиков использовать множество обходных путей и "хаков", которые в итоге отрицательно влияли на производительность. Удаление устаревшего кода позволило обеспечить более быструю реализацию некоторых функций и примерно на 10% сократить размер библиотеки. В обозримом будущем разработчики намерены поддерживать обе ветки jQuery, поэтому выбор версии 1.9 и 2.0 зависит от того готовы ли разработчики web-приложений отказаться от поддержки устаревших версий Internet Explorer. В качестве оптимального варианта предлагается по умолчанию загружать версию jQuery 2.0, но если запрос поступил от пользователя IE выдавать jQuery 1.9.

Примечательно, что браузер Internet Explorer 8 ещё поддерживается производителем и находится в обиходе, тем не мене разработчики jQuery приняли решение по отказу от его поддержки. В качестве причины упоминается то, что несмотря на существенный прогресс в обработке CSS, реализация DOM API в IE8 оставляет желать лучшего и мало чем отличается от IE6 и IE7, поэтому имеет смысл или прекратить поддержку всех трёх версий или продолжать мучиться с поддержкой устаревшего кода.

Большая часть остальных изменений, которые справедливы, как для jQuery 2.0, так и для ветки 1.9, связана с проведением чистки кодовой базы и удалением устаревших возможностей. Для обеспечения работы кода, написанного для старых версий jQuery, представлен специальный плагин jQuery Migrate.

Из особенностей API jQuery 1.9 и 2.0 можно отметить:

  • Значительная модернизация API и прекращение поддержки устаревших функций, таких как .toggle(function, function, ...), .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() для мгновенного завершения всех находящихся в очереди анимаций для указанного элемента.


Источник:
http://www.opennet.ru/opennews/art.shtml?num=36734

<= Назад
Комментарии
]]> ipv6 ready Kiev LUGLinux4MeНостальгияЛичный сайт skeletora ]]>