jQuery je knižnica JavaScriptu vytvorená s cieľom uľahčiť a zjednodušiť písanie JavaScriptu a HTML. Funguje vo väčšine webových prehliadačov a jej autorom je John Resig. Prvé vydanie sa uskutočnilo v januári 2006 na BarCamp NYC. Dnes na jQuery pracuje tím vývojárov, ktorý vedie Dave Methvin.
jQuery je bezplatný softvér s otvoreným zdrojovým kódom a je šírená pod licenciou MIT. Vďaka svojej jednoduchej syntaxi a bohatej sade pluginov sa stala extrémne populárnou — historicky ju používa viac ako 55 % zo 10 000 najnavštevovanejších webov (tento podiel sa časom mení podľa trendov vývoja webu).
Čo jQuery prináša
Syntax jQuery je navrhnutá tak, aby uľahčila písanie bežných a zložitých úkonov v JavaScripte. Najčastejšie použitia zahŕňajú:
- navigovať (pohybovať sa) po webovej stránke a manipulovať s elementmi DOM;
- vybrať (zvoliť) prvky na webovej stránke pomocou objektového modelu dokumentu s veľmi výkonnými selektormi (podobné CSS selektorom);
- vytvárať animácie a prechody jednoduchým volaním metód ako .fadeIn(), .slideUp() a pod.;
- spracovávať udalosti (kliknutia, pohyb myši, formuláre) a podporovať event delegation cez .on();
- vytvárať aplikácie Ajax pomocou metód ako $.ajax(), $.get(), $.post() a jednoduchou manipuláciou s odpoveďami servera;
- rozširovať funkcionalitu cez bohatý ekosystém pluginov alebo vytvárať vlastné pluginy.
Jednoduché príklady použitia
Zahrnutie knižnice (príklad cez CDN):
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> Skrytý príklad prvku po načítaní dokumentu:
$(document).ready(function() { $('p').hide(); // skryje všetky odstavce }); // alebo skrátene $(function() { $('#btn').on('click', function() { $('#panel').toggle(); }); }); Ukážka reťazenia a animácie:
$('#box') .addClass('active') .fadeIn(400) .css('background-color', '#f0f0f0'); Vytvorenie jednoduchého pluginu:
$.fn.zobrazUvitanie = function(options) { var settings = $.extend({ text: 'Ahoj!' }, options); return this.each(function() { $(this).text(settings.text).show(); }); }; // použitie $('#greeting').zobrazUvitanie({ text: 'Vitajte na webe' }); Ekosystém a pluginy
Okrem samotného jadra existuje množstvo populárnych rozšírení a knižníc založených na jQuery, napríklad jQuery UI (komponenty používateľského rozhrania), jQuery Mobile (mobilné UI), a stovky tretích strán ako DataTables, Select2, Slick carousel a ďalšie. Vývojári môžu rýchlo nájsť hotové riešenia pre formuláre, tabuľky, modal okná, validáciu a mnoho ďalšieho.
Integrácia a použitie v platformách
Spoločnosti ako Microsoft a Nokia uviedli, že sa chystajú zahrnúť jQuery do svojich mobilných platforiem. Okrem toho spoločnosť Microsoft zahŕňa jQuery do svojho softvéru Visual Studio na použitie s rámcom ASP.NET AJAX a rámcom ASP.NET MVC. Spoločnosť Nokia ho zahrnula do svojej platformy na vývoj widgetov Web Run-Time. jQuery sa používa aj v MediaWiki od verzie 1.16.
Kedy použiť jQuery a kedy nie
jQuery je stále vhodné pre projekty, kde:
- potrebujete rýchlo spracovať DOM manipulácie alebo udalosti bez nastavovania zložitej build infraštruktúry;
- pracujete so staršími prehliadačmi a potrebujete zabaliť cross-browser riešenia;
- využívate množstvo existujúcich jQuery pluginov alebo legacy kód.
Naproti tomu moderné single-page aplikácie často používajú knižnice a rámce ako React, Vue alebo Angular, ktoré spravujú DOM virtuálne a ponúkajú iný model práce s dátami. Pre jednoduché použitie DOM API v moderných prehliadačoch už často postačuje čistý (vanilla) JavaScript, ktorý dnes pokrýva mnoho funkcií, ktoré kedysi riešilo jQuery.
Najlepšie postupy a výkon
- keď používate selektory opakovane, ukladajte ich do premenných (cache): var $el = $('#id');
- využívajte delegáciu udalostí (.on(event, selector, handler)) pri veľkom počte dynamických prvkov;
- minimalizujte manipulácie s DOM a používajte dokumentové fragmenty alebo stringy, ak je potrebné vložiť veľa HTML naraz;
- pri upgrade medzi väčšími verziami jQuery používajte plugin jQuery Migrate na odhalenie zastaraných volaní;
- vyberte len tie moduly/pugliny, ktoré potrebujete, aby ste znížili výslednú veľkosť stránky.
Správa projektu a licencia
jQuery bolo pôvodne riadené komunitou okolo zakladateľa John Resiga a neskôr spravované širším tímom vývojárov. Knižnica je open-source a licencovaná pod MIT, čo umožňuje jej použitie v komerčných aj nekomerčných projektoch bez väčších obmedzení.
Ak pracujete s existujúcim projektom, ktorý už jQuery používa, alebo ak potrebujete rýchlo implementovať interaktivitu s množstvom dostupných pluginov, jQuery je stále praktickou a osvedčenou voľbou. Pre nové veľké aplikácie zvážte aj moderné alternatívy a architektonické prístupy.