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.