Zepto
Autor: Zlatan Vasović
Uvod
Zepto je popularna alternativa jQuery biblioteci sa aktivnim razvojem.
Upotreba
Zepto je mnogo „lakši”, brži i više prilagođen mobilnim uređajima. Zato se često koristi na sajtovima sa prvenstvenom namenom za mobilne uređaje.
Razlike u odnosu na jQuery
Zepto je veličine ~10KB, dok je jQuery~80KB, što je čak osam puta veće.
jQuery ima podršku za stare desktop pregledače (IE <9), dok je Zepto nema. On ima odličnu podršku za mobilne pregledače.
Moduli
Osnovni moduli:
- zepto: modul sa većinom metoda
- event: upravljanje događajima u pregledaču
- ajax: upravljanje HTTP zahtevima
- form: upravljanje formama
- ie: podrška za IE 10+
Ostali moduli:
- detect: informacije o operativnom sistemu i pregledaču
- fx: osnovna metoda za animacije
- fx_methods: dodatne metode za animacije
- assets: eksperimentalna metoda za čišćenje slika iz iOS memorije nakon uklanjanja elemenata
- data: metoda za skladištenje proizvoljnih objekata
- deferred: pomoćni modul za takozvane promise-ove, specijalne događaje u pregledaču
- callbacks: pomoćni modul za deferred
- selector: eksperimentalna podrška za jQuery selektore, kao što su $(‘div:first’) i el.is(‘:visible’)
- touch: podrška za događaj dodira prsta (eng. touch event)
- gesture: podrška za gesture
- stack: dodatne ciklične metode
- ios3: nedostajuće String.prototype.trim i Array.prototype.reduce metode za iOS3
Podrška
Potpuna podrška:
- Safari 6+ (OS X)
- Chrome 30+ (Windows, OS X, Android, iOS, Linux, Chrome OS)
- Firefox 24+ (Windows, OS X, Android, Linux, Firefox OS)
- iOS 5+ Safari
- Android 2.3+ Browser
- Internet Explorer 10+ (Windows, Windows Phone)
Delimična podrška:
- iOS 3+ Safari (uz opcioni modul)
- Chrome <30
- Firefox 4+
- Safari <6
- Android Browser 2.2
- Opera 10+
- webOS 1.4.5+ Browser
- BlackBerry Tablet OS 1.0.7+ Browser
- Amazon Silk 1.0+
Primeri
Primer 1: ciklična petlja
// niz $.each(['a', 'b', 'c'], function (index, item) { console.log('%d je: %s', index, item) }); // objekat var hash = { name: 'zepto.js', size: 'micro' } $.each(hash, function (key, value) { console.log('%s: %s', key, value) });
Primer 2: detekcija verzije operativnog sistema i pregledača
// recimo da imamo iOS 6.1 // prefiks `!!` osigurava boolean izlaz (true/false) !!$.os.phone; // => true !!$.os.iphone; // => true !!$.os.ios; // => true $.os.version; // => "6.1" $.browser.version; // => "536.26"
Primer 3: upravljanje događajima u pregledaču
var elem = $('.container'); // praćenje klikova na `elem` elem.on('click', function (e) { /* ... */ }); // praćenje svih klikova na linkove $(document).on('click', 'a', function (e) { /* ... */ }); // prekid praćenja svih klikova na linkove $(document).on('click', 'a', false);
Zaključak
Zepto je odlična alternativa jQuery-ju. Ako su vam prioritet desktop računari, odluka pada na jQuery. Ipak, ako su prioritet mobilni uređaji, Zepto je neuporedivo korisniji (prim.aut.).
Korisni linkovi:
[1] http://zeptojs.com/
[2] https://github.com/madrobby/zepto
[3] http://stackoverflow.com/questions/14830334/what-is-the-difference-between-zepto-and-jquery-2
[4] http://code.tutsplus.com/tutorials/the-essentials-of-zeptojs–net-24867