====== jQuery ======
**jQuery** vzniklo v roce 2006 (autorem je John Resig) v době, kdy prohlížeče (Internet Explorer, Firefox, Safari) interpretovaly JavaScript každý trochu jinak. jQuery tyto rozdíly sjednotilo do jedné jednoduché syntaxe.
===== 1. Proč bylo jQuery revoluční? =====
Před příchodem jQuery vyžadovaly i jednoduché úkony mnoho řádků kódu. jQuery přineslo:
* **Jednoduché selektory:** Výběr prvků na stránce pomocí CSS syntaxe (např. ''$("#tlacitko")'').
* **Chainability (Řetězení):** Možnost provádět více operací na jednom prvku za sebou v jednom řádku kódu.
* **Cross-browser kompatibilita:** Programátor nemusel řešit, jestli jeho kód poběží v IE6 nebo v Chromu – knihovna to vyřešila za něj.
* **Rozsáhlý ekosystém:** Tisíce hotových zásuvných modulů (pluginů) pro galerie, kalendáře nebo validaci formulářů.
===== 2. Porovnání: Čistý JS vs. jQuery =====
Úkol: Skrýt všechny odstavce s třídou "skrytý" po kliknutí na tlačítko.
**Čistý JavaScript (Vanilla JS):**
document.querySelectorAll('button').forEach(button => {
button.addEventListener('click', () => {
document.querySelectorAll('p.skryty').forEach(p => {
p.style.display = 'none';
});
});
});
**jQuery:**
$('button').click(function() {
$('p.skryty').hide();
});
[Image comparison of vanilla JavaScript vs jQuery code length for the same task]
===== 3. Hlavní funkce knihovny =====
* **DOM Manipulace:** Snadné přidávání, mazání nebo úprava HTML elementů a jejich CSS stylů.
* **Event Handling:** Jednoduché zachytávání kliknutí, psaní na klávesnici nebo odesílání formulářů.
* **Animace:** Vestavěné efekty jako ''fadeIn()'', ''slideUp()'' nebo ''animate()'' pro vlastní pohyby prvků.
* **AJAX:** Zjednodušená komunikace se serverem na pozadí bez nutnosti obnovovat celou stránku.
===== 4. Úpadek jQuery: Je ještě potřeba? =====
V posledních letech popularita jQuery klesá. Důvody jsou:
* **Nativní JS dospěl:** Moderní prohlížeče už implementovaly funkce, které dříve umělo jen jQuery (např. ''fetch()'' místo ''$.ajax()'' nebo ''querySelector'').
* **Nové frameworky:** Technologie jako **React, Vue** nebo **Angular** řeší tvorbu uživatelského rozhraní úplně jiným, efektivnějším způsobem.
* **Velikost:** Pro jednoduché stránky je jQuery zbytečná zátěž (cca 30 KB navíc), která zpomaluje načítání na mobilech.
===== 5. Kde se s ním stále setkáte? =====
I přes úpadek jQuery stále pohání **přes 70 % nejnavštěvovanějších webů**. Je to díky:
* **WordPressu:** jQuery je stále pevnou součástí nejrozšířenějšího redakčního systému.
* **Legacy kód:** Miliony existujících webů jsou na něm postaveny a jejich přepisování by bylo příliš drahé.
* **Bootstrap (starší verze):** Populární CSS framework dříve na jQuery plně spoléhal (verze 5 už ho však odstranila).
> **Zajímavost:** Znak dolaru **$** v jQuery je ve skutečnosti jen zkratka pro funkci s názvem ''jQuery''. Volání ''$('#id')'' je tedy totéž jako ''jQuery('#id')''. Tento symbol se stal tak ikonickým, že si ho mnozí pletou se samotným JavaScriptem.
[[it_encyklopedie:javascript|Zpět na JavaScript]]