Доступен (http://blog.jquery.com/2013/01/15/jquery-1-9-final-jquery-2-.../) релиз популярной JavaScript-библиотеки jQuery 1.9 (http://www.jquery.com), используемой (http://docs.jquery.com/Sites_Using_jQuery) на более чем половине из 10 тысяч наиболее посещаемых сайтов в сети. После отказа (http://www.opennet.ru/opennews/art.shtml?num=34819) проекта от практики двойного лицензирования (GPL+MIT) код jQuery (https://github.com/jquery/jquery) теперь распространяется только под лицензией MIT. Большая часть изменений в новой версии связана с проведением чистки (http://jquery.com/upgrade-guide/1.9/) кодовой базы и удалением устаревших возможностей. Для обеспечена работы кода, написанного для старых версий jQuery, представлен специальный плагин jQuery Migrate (http://github.com/jquery/jquery-migrate/).
Одновременно доступна для тестирования бета-версия jQuery 2.0, функционально полностью эквивалентная jQuery 1.9 на уровне API и отличающаяся прекращением поддержки браузеров Internet Explorer 6, 7 и 8. Поддержка устаревших версий Internet Explorer вынуждала разработчиков использовать множество обходных путей и "хаков", которые в итоге отрицательно влияли на производительность. Удаление устаревшего кода позволило обеспечить более быструю реализацию некоторых функций и примерно на 10% сократить размер библиотеки.
Прекращение поддержки ещё находящегося в обиходе выпуска Internet Explorer 8 связано с тем, что несмотря на существенный прогресс в обработке CSS, реализация DOM API в IE8 оставляет желать лучшего и мало чем отличается от IE6 и IE7, поэтому имеет смысл или прекратить поддержку всех трёх версий или продолжать мучиться с поддержкой устаревшего кода. В обозримом будущем поддержка будет обеспечена для обоих веток jQuery, поэтому выбор версии 1.9 и 2.0 зависит от того готовы ли разработчики web-приложений отказаться от поддержки устаревших версий Internet Explorer. В качестве оптимального варианта предлагается по умолчанию загружать версию jQuery 2.0, но если запрос поступил от пользователя IE выдавать jQuery 1.9.
Из особенностей API (http://api.jquery.com/) jQuery 1.9 и 2.0 можно отметить:
- Значительная модернизация (http://jquery.com/upgrade-guide/1.9/) 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() для мгновенного завершения всех находящихся в очереди анимаций для указанного элемента.
URL: http://blog.jquery.com/2013/01/15/jquery-1-9-final-jquery-2-.../
Новость: http://www.opennet.ru/opennews/art.shtml?num=35850