jQuery — популярна JavaScript библиотека за DOM, анимации и AJAX
jQuery — популярна JavaScript библиотека за лесна работа с DOM, анимации и AJAX: бързо селектиране, обработка на събития и плъгини за модерни уеб приложения.
jQuery е библиотека на JavaScript, създадена, за да улесни и опрости писането на JavaScript и HTML. Тя работи с повечето уеб браузъри и е изобретена от Джон Ресиг. Първата версия е публикувана през януари 2006 г. на BarCamp NYC. Днес по jQuery работи екип от разработчици, който се ръководи от Дейв Метвин.
Днес повече от 55% от 10 000-те най-посещавани уебсайта използват jQuery, поради което това е най-популярната библиотека на JavaScript, която се използва днес. Тя е свободен софтуер с отворен код и е лицензирана под лиценза MIT.
Синтаксисът на jQuery е разработен така, че да улеснява писането на сложни JavaScript. Някои неща, които са по-лесни за изпълнение с помощта на jQuery, са:
- навигиране (придвижване) в уеб страница
- да избирате (селектирате) елементи в уеб страница, като използвате модела на обекта на документа.
- създаване на анимации
- обработване на събития като действия на потребителя
- създаване на Ajax приложения.
Той също така позволява на разработчиците да създават свои собствени приставки на jQuery.
Компании като Microsoft и Nokia заявиха, че ще включат jQuery в своите мобилни платформи. Освен това Microsoft включва jQuery в софтуера си Visual Studio, за да се използва с рамката ASP.NET AJAX и рамката ASP.NET MVC. Nokia го е включила в своята платформа за разработване на джаджи Web Run-Time. jQuery се използва и в MediaWiki от версия 1.16.
Ключови характеристики и концепции
jQuery предоставя удобен и последователен API за общи задачи при работа с уеб страница. Най-важните характеристики включват:
- Селектори и манипулация на DOM: с кратък и четим синтаксис можете да избирате елементи, да четете и променяте атрибути, съдържание и стилове.
- Обработка на събития: опростено прикачване и премахване на обработчици за кликове, преминаване на мишка, форми и други взаимодействия.
- Ефекти и анимации: вградени методи за показване/скриване, fade, slide и анимирани промени на CSS свойства.
- AJAX и асинхронност: улеснени методи за зареждане на данни от сървъра, изпращане на формуляри и работа с JSON, HTML и текст.
- Утилити функции: помощни методи за работа с масиви, обекти, функции (например $.each, $.extend, $.data), както и подкрепа за Deferred/Promise модели за по-лесно управление на асинхронни операции.
- Разширяемост с приставки (plugins): богат екосистем от приставки за слайдъри, модални диалози, валидация, шаблони и други.
Пример за използване
Типичен пример за jQuery (описателно, без външни връзки) е селектиране на всички параграфи и скриването им при клик върху бутон:
Примерна логика: при клик на бутонът с идентификатор "hideBtn" всички <p> елементи ще бъдат скрити.
В jQuery това се напише кратко и четливо: $('#hideBtn').click(function(){ $('p').hide(); });
История и развитие
jQuery е създадена в отговор на проблемите с несъвместимостите между браузърите и многословния JavaScript код преди появата на по-модерни стандартизирани API. Първата версия бе представена през 2006 г., а след това библиотеката бързо набра популярност благодарение на лесния си синтаксис и широката поддръжка на браузъри. През годините бяха пуснати няколко големи версии (включително семейства 1.x, 2.x и 3.x), като 2.x премахна поддръжката за много остарели браузъри (IE6–8), а 3.x въведе допълнителни оптимизации и по-строго съвместим поведение със съвременните стандарти.
Поддръжка, разпространение и производителност
jQuery често се доставя чрез CDN (Content Delivery Networks) или като част от пакетите на уеб приложения и сървъри. Тъй като библиотеката абстрахира множество детайли за различните браузъри, тя може да ускори разработката и да намали броя на бъговете, свързани с крос-браузърността.
В същото време, при модерни проекти разработчиците често преценяват дали да използват jQuery или да приложат чисти (vanilla) JavaScript решения и/или съвременни рамки като React, Vue или Angular. Причините са свързани с размера на библиотеката, нуждата от модулност, и различните подходи към управлението на състояние и рендериране в големи приложения. За прости манипулации на DOM и бързи прототипи jQuery остава полезен инструмент.
Как да започнете
За да използвате jQuery, обикновено трябва да заредите библиотеката в HTML страницата преди вашия скрипт. Това може да стане чрез включване на локално копие или чрез CDN. След това можете да използвате $() или jQuery() за селектиране и манипулация.
Съвместимост и миграция
Когато обновявате по-стара версия на jQuery към по-нова, има инструменти и приставки (например jQuery Migrate), които помагат да се локализират и поправят несъвместимости. Добрата практика е да тествайте кодовата база и използваните приставки при ъпгрейд преди да го приложите в продукция.
Кога да използвате jQuery
- Когато ви трябва бърз начин за манипулации на DOM и работа с AJAX в малък или среден проект.
- За поддръжка на по-стари браузъри, когато native API не осигуряват еднократно поведение във всички среди.
- Когато искате достъп до голям брой готови приставки и лесна екосистема.
Алтернативи и бъдеще
С развитието на ECMAScript стандарта и на браузърните API, много задачи, за които преди беше нужно jQuery, могат да се решат с чист JavaScript (querySelector, fetch, classList и др.). Също така съвременните frontend рамки често внасят собствени начини за управление на DOM и състояние, което намали честотата на използване на jQuery в новите големи SPA проекти. Въпреки това библиотеката остава широко използвана в множество сайтове и наследен код.
Ако желаете, мога да добавя примерни кодови фрагменти за конкретни задачи (избор на елемент, AJAX заявка, създаване на анимация) или да опиша процеса за миграция от по-стара версия на jQuery към по-нова.
История на изданието
| Номер на версията | Дата на издаване | Допълнителни бележки |
| 1.0 | август 26, 2006 | Първо стабилно издание |
| 1.0.1 | 31 август 2006 г. | |
| 1.0.2 | 9 октомври 2006 г. | |
| 1.0.3 | 27 октомври 2006 г. | |
| 1.0.4 | 12 декември 2006 г. | Последна поправка на грешка 1.0 |
| 1.1 | 14 януари 2007 г. | |
| 1.1.1 | 22 януари 2007 г. | |
| 1.1.2 | 27 февруари 2007 г. | |
| 1.1.3 | 1 юли 2007 г. | |
| 1.1.3.1 | 5 юли 2007 г. | |
| 1.1.4 | 24 август 2007 г. | |
| 1.2 | 10 септември 2007 г. | |
| 1.2.1 | 16 септември 2007 г. | |
| 1.2.2 | 15 януари 2008 г. | |
| 1.2.3 | 8 февруари 2008 г. | |
| 1.2.4 | 19 май 2008 г. | |
| 1.2.5 | 21 май 2008 г. | Поправка за лошо изграждане на 1.2.4 |
| 1.2.6 | 24 май 2008 г. | |
| 1.3 | 14 януари 2009 г. | Въвеждане на Sizzle Selector Engine в ядрото |
| 1.3.1 | 21 януари 2009 г. | |
| 1.3.2 | 20 февруари 2009 г. | |
| 1.4 | 14 януари 2010 г. | |
| 1.4.1 | 25 януари 2010 г. | |
| 1.4.2 | 19 февруари 2010 г. | |
| 1.4.3 | 16 октомври 2010 г. | |
| 1.4.4 | 11 ноември 2010 г. | |
| 1.5 | 31 януари 2011 г. | Управление на отложените обратни повиквания, пренаписване на модула ajax |
| 1.5.1 | 24 февруари 2011 г. | |
| 1.5.2 | 31 март 2011 г. | |
| 1.6 | 3 май 2011 г. | Значителни подобрения в производителността на функциите attr() и val() |
| 1.6.1 | 12 май 2011 г. | |
| 1.6.2 | 30 юни 2011 г. | |
| 1.6.3 | 1 септември 2011 г. | |
| 1.6.4 | 12 септември 2011 г. | |
| 1.7 | 3 ноември 2011 г. | Нови приложни програмни интерфейси за събития: .on() и .off(), като старите приложни програмни интерфейси все още се поддържат. |
| 1.7.1 | 21 ноември 2011 г. | |
| 1.7.2 | 21 март 2012 г. | |
| 1.8.0 | август 9, 2012 | Пренаписан двигател на селектора Sizzle, подобрени анимации и гъвкавост на $(html, реквизит). |
| 1.8.1 | 30 август 2012 г. | |
| 1.8.2 | 20 септември 2012 г. | |
| 1.8.3 | 13 ноември 2012 г. | |
| 1.9.0 | началото на 2013 г. | Премахване на остарелите интерфейси и почистване на кода |
| 2.0.0 | началото на 2013 г. | Отпадане на поддръжката на IE6-8 за подобряване на производителността и намаляване на размера на файловете |
Въпроси и отговори
В: Какво е jQuery?
О: jQuery е JavaScript библиотека, създадена, за да улесни и опрости писането на JavaScript и HTML.
В: Кой е измислил jQuery?
О: Джон Ресиг е изобретил jQuery.
Въпрос: Кога е първото издание на jQuery?
О: Първото издание на jQuery беше през януари 2006 г. на BarCamp NYC.
В: Кой ръководи екипа от програмисти, работещи по jQuery днес?
О: Дейв Метвин ръководи екипа от програмисти, които работят по jQuery днес.
В: Колко популярен е jQuery?
О: Повече от 55% от 10 000-те най-посещавани уебсайта използват jQuery, което я прави най-популярната JavaScript библиотека, използвана днес.
В: Има ли разходи, свързани с използването на jQuery?
О: Не, няма разходи, свързани с използването на jQuery, тъй като това е безплатен софтуер с отворен код, лицензиран с лиценза MIT.
В: Кои са нещата, които са по-лесни за изпълнение с помощта на jquery?
О: Някои неща, които са по-лесни за изпълнение с помощта на jquery, включват навигация (придвижване) в уеб страница, избор (селектиране) на елементи в уеб страница с помощта на Document Object Model (модел на обекта на документа), създаване на анимации, обработка на събития като действия на потребителя, създаване на Ajax приложения и създаване на собствени приставки на jquery.
обискирам