spájame
slovenskú
IT komunitu
pridaj sa
Registrácia · Login

Miro Mašat 18.6.2012
Hodnoť článok:
1 0

Zepto.js je nové jQuery?

Nedávno som na nete narazil na zaujívavú mini-knižničku Zepto.js, ktorá zo začiatku mala ísť konkurenčne voči jQuery Mobile... Dnes? Možný suplement celého jQuery.

Iste množstvo zo zajtra-kov pozná jQuery. (Skvelý set tutoriálov od yablka) jQuery je vskutku skvelým frameworkom na veľmi komplexné riešenie
problémov s raw JS, ajaxových requestov, kompatibility prehliadačov a pod. A presne posledný spomenutý bod môže byť problémom. jQuery sa stáva
pomerne masívnou platformou, kde sa nešetrí kódom, pridáva sa fukcionalita ktorá je už raz napísaná znova, či už kvôli exploreru alebo celému
procesu zjednodušovania života developerov (prípadne ich lenivosti :-)). Celková veľkosť jQuery (pri verzii 1.7.2) je ~96KB (.js)
... celkom handy a tá veľkosť nie je až taká hrozná.

A čo Zepto.js? V podstate je Zepto.js (ne)optimalizované jQuery, tvorcovia Zepto, ako správni hateri, radšej kašlú na spätnú kompatibilitu
u niektorých prehliadačov.
Zepto.js optimalizované pre:

  • Safari 5+ (desktop)
  • Chrome 5+ (desktop)
  • Mozilla Firefox 4+
  • iOS 4+ Safari
  • Android 2.2+ Browser
  • Other WebKit-based browsers/runtimes
  • webOS 1.4.5+ Browser
  • BlackBerry Tablet OS 1.0.7+ Browser
  • Amazon Silk 1.0+
  • Opera 10+

jasne vidno, že nejaký IE ani neriešili. Hlavnou výhodou Zepto je úplná zhoda syntaxe s jQuery a takmer úplná funkcionalita jQuery. Zepto.js
využíva, tak ako aj jQuery selektorovú knižnicu sizzle.js, pokročilú správu eventov, plnú podporu crossbrowser Ajaxu a pod. Hlavným lákadlom
je však nízka veľkosť knižnice (pri verzii 1.0rc1) ~24KB (.js). Čo je len 1/4 jQuery! Navyše komunita okolo Zepto.js je rastúca a vyzerá to celé dosť sľubne.

Čo Zepto.js neponúka po stránke funkcionality?

  • niektoré CSS selektory (:eq() a pod.)
  • niektoré volania natívnych funkcii sa môžu líšiť
  • nepodporuje pokročilejšiu syntax pri animate() metóde (.animate({"left": "+=50px"});)
  • nepodporuje easing, len CSS3 animácie

Prednosti Zepto.js

  • zopár pridaných funkcii, ktoré v jQuery nenájdete (reduce(), pluck(), indexOf() a pod.)
  • rôzne tap eventy (.tap(), .singleTap(), .swipe() a pod.)

Kedy použijem Zepto.js?

Treba zvážit situáciu, očakávania klienta, či publikum. Taktiež ako veľmi komplikovane programujete a aké pokročilosti jQuery používate.
Ak však používate 95% obyčajného jQuery, potom by som rozhodne zvolil variantu výberu knižnice podľa klienta (prehliadača), kde môže vhodne pomôcť niečo ako:

pre yepnope (tutoriál od yablka):

yepnope({
  test: !+"\v1", // prehliadač je IE?
  yep: 'jquery.js',
  nope: 'zepto.js'
});

alebo (<3 raw JS):

('__proto__' in {} ? 'zepto.js' : 'jquery.js');

alebo... doplniť v komentoch... sami viete ako na to... lepšie ;-)

Miro Mašat Miro Mašat

Len robím, čo ma baví...


Hodnoť článok:
1 0

10 komentárov k článku:

Komentovať môžu iba prihlásení

Zaregistruj sa cez bezplatnú registráciu alebo použi login cez Facebook (FB Connect)

Prihlás sa tu, ak už máš profil na Zajtra.sk:


Zabudol som heslo

0 0 Miloš 21.6.2012 07:23:00
Tak potom som si ho nepamätal dobre. To je asi tým, že denne rôznych článkov prečítam veľa a potom si to človek dobre nepamätá. Ale nesmerovalo to nikam.
0 0 Miro Mašat 20.6.2012 22:51:42
Milos clanok nebol upraveny. Neviem na co tato otazka smeruje.
0 0 Miloš 20.6.2012 19:19:51
Článok bol upravený? alebo si ho zle pamätám?
0 0 Martin Maričák 20.6.2012 08:58:16
Vďaka za článok. :)
0 0 Miloš 19.6.2012 17:52:36
Všade čítam, že je taký framework miesto jQuery alebo taký. Je fajn, že je toho toľko, ale nakoniec človek narazí na to, že ak kpotrebuje plugin, tak pre jQuery je toho najviac. Nechcem tým uraziť autora článku, ale podľa mňa používať alternatívu k jQuery nemá význam. Napríklad dĺžka kódu? Keď si zrátame všetky obrázky na stránke, tak jQuery je oproti tomu absolútne nič. Dokonca, ak je kóder šikovný, spojí všetky js do jedného súboru a natiahne všetko v jednej požiadavke. Dnes dĺžka kódu nemá význam. A argumenty typu EDGE pripojenie neuznám. Práve som pripojený cez EDGE a všetky stránky mi fičia obstojne.
0 0 Miro Mašat 18.6.2012 23:22:30
Tomáš vďaka za názor. Ja to vnímam ako evolúciu... vždy musi niečo popohnať aj jQuery možno inak, ďalej, alebo ju aj nahradiť. Možno si pamätáš, ja už fakt len matne, keď jQuery vznikla... ako lepšie Dojo (http://dojotoolkit.org/), vzrástla komunita, vytvoril sa dokonalejší FW... možno sa to isté stane s Zepto... a možno ani nie. Som rád, keď ľudia majú na výber, ako vidíš, sú aj takí, ktorí o Zepto ešte nepočuli. Peace.
0 0 Tomáš Gluchman 18.6.2012 20:16:16
Argumenty chabé - jQuery 1.0 mala 16kB. Autori Zepta budú zisťovať, čo tam ešte pridať, a ak nepomrú, tak raz budú vedľa seba sedieť dvaja tlouštíci, populárna a premakaná jQuery a udýchané a uslintané Zepto.
0 0 Miro Mašat 18.6.2012 18:11:12
Áno v podstate sa na to môžeš pozerať aj takto, vidím zmysel v rýchlosti presne u mobilných aplikácii (Android) kde to ušetrí trochu času... Čo sa týka pluginov... to treba idividuálne otestovať. Používam to presne tak... iba ako fallback keď to niečo usporí. V týchto frameworkoch už veľká revolúcia si myslím nebude, pre budúcnosť by som možno rád napísal čo-to o knockoutJS/sproutcore/backboneJS... to možno nájdeš prínosnejšie. :-)
0 0 František "yderf" Haško 18.6.2012 18:04:00
Neriesit kompatibilitu - naco to teda vlastne robia? na rychlost? Pre veci ako PhoneGap? Nevidim velmi zmysel.

Ten tvoj priklad je samozrejme dobry, no vacsinou ludia nepouzivaju jquery, aby v tom pisali vlastne veci, ale kvoli pluginom. A kedze nie je zabezpecena kompatibilita s jquery, tak to mozu len tazko pouzit. Alebo povedzme, ze aj pises vlastne pluginy v jquery, opat, kompatibilita. Mozno keby bol presny popis rozdielov, atd. tak tato tema ma potencial.
0 0 Andrej Mihaliak 18.6.2012 15:54:09
Pravdu povediac som o tejto knižnici ešte nepočul a som rád že si napísal o tom článok :) pekné len tak ďalej...
Zajtra.sk > Programovanie > JS/jQuery > Zepto.js je nové jQuery?


Kritika

Vieš ako robiť veci lepšie? Pomôž našim odvážnejším členom a skritizuj im projekty!

Reklama

Seriály zo Zajtra.sk

Reklama