Istnieją dwa podobne projekty:
Zepto to minimalistyczna biblioteka JavaScript dla nowoczesnych przeglądarek z interfejsem API w dużej mierze kompatybilnym z jQuery.
jQuery 2.0 beta: Oto twój gust przyszłości, jQuery, który może być szybszy i mniejszy bez konieczności obsługi IE 6, 7 lub 8. Jest to doskonały wybór dla aplikacji HTML specyficznych dla platformy.
Czy chodzi tylko o wydajność, czy też stosują różne podejścia?
Odpowiedzi:
Podstawową różnicą między Zepto.js i jQuery są ich odpowiednie rozmiary plików Zepto.js ~ 20kb (zminimalizowane, nie spakowane gzipem) zamiast ~ 80kb jQuery i ~ 10kb Zepto.js (zminimalizowane, Gzipped) zamiast ~ 30kb jQuery. Ponadto wsparcie Zepto dla przeglądarek, takich jak
IE<10
brak lub nie jest gwarantowane, jego platformy docelowe to:źródło
jquery 2 to ~ 30kb, a zepto to ~ 10kb, gdy oba pliki są zgzipowane i zminimalizowane. Niegzipowany, ale zminimalizowany, jquery 2 ma ~ 80kb, a zepto ~ 30kb.
Użyj programu analitycznego, aby sprawdzić odbiorców swojej witryny. Jeśli znaczna część twoich użytkowników używa IE9, potrzebujesz jquery, a zepto nie będzie latać. Jeśli kilka procent korzysta z IE8 i niższych i nie możesz ich zostawić bez swojej witryny, będziesz musiał użyć jquery 1. Jeśli celujesz w to ostatnie, przepraszam - dużo nowych błyszczących zabawek nie zadziała dla Ciebie.
Jeśli tworzysz aplikację html5 na Androida / iOS / phonegap itp., To przede wszystkim kierujesz się na webkit, więc zepto zapewnia duże oszczędności. Podstawowym wnioskiem i powodem istnienia zepto jest to, że gdy działa tylko na platformach webkit, wiele obejść międzyplatformowych jquery jest po prostu niepotrzebnych.
Zepto dodaje również kilka programów obsługi zdarzeń dotykowych, które pomagają w tworzeniu urządzeń mobilnych, ale należy pomyśleć głównie o wadze strony w porównaniu z obsługą platformy.
źródło
To dość stare pytanie, ale chciałbym dodać wydajność. Z tego, co słyszałem, Zepto działał lepiej niż jQuery.
Ten plik jsPerf pokazuje różne wyniki. Mogę używać selekcji klas jQuery (pojedynczego elementu) 137% tak często, jak Zepto. Do wyboru identyfikatora mogę równie często używać 285% jQuery.
To ogromna sprawa, biorąc pod uwagę większość aplikacji, interakcje DOM są jedynymi statystykami wydajności, które mają znaczenie (inne niż żądania sieciowe).
Patrząc również na tę perf, widzę, że mógłbym zrobić document.getElementsByClassNAme 8326% tak często, jak jQuery, więc wszyscy powinniśmy porzucić to wszystko, jeśli to możliwe :-)
źródło
Zepto nie ma odroczonego / obiecującego interfejsu API, który oferuje jQuery. Istnieje dodatek Simply Deferred, który rozwiązuje ten problem: https://github.com/sudhirj/simply-deferred .
źródło
Myślę, że nigdy nie używał Zepto do szybkiego przejścia w sieć. Spójrz Głęboko w swojej lodowej jaskini, mądry i potężny Yeti słyszał, jak ludzie pytają: „Gdzie Zepto poszedł?” Kiedy powstawał Foundation 4, przeszliśmy na Zepto (z opcją jQuery) ze względu na mniejszy rozmiar pliku i krótszy czas ładowania.
Jednak z biegiem czasu okazało się, że mniejszy rozmiar pliku nie przekładał się na ogólną lepszą wydajność. Jasne, Zepto pobrał się szybko. Ale po załadowaniu nie był tak szybki jak jQuery. Nie pomogło to, że wiele wtyczek innych firm wymagało jQuery, a nie Zepto - w rzeczywistości okazało się, że niektóre skrypty JavaScriptu innych firm były w konflikcie z Zepto.
Utrzymanie różnych baz kodu również nie było dla nas łatwe. Na przykład Zepto nie ma odpowiedniej funkcji obliczania wysokości, co utrudnia niektóre obliczenia siatki.
Aby rozwiązać ten problem, odpowiedź była jasna jak wiosenne niebo w Himalajach: Foundation 5 używa jQuery 2. Oprócz większej szybkości i akceptacji w branży, jQuery 2 korzysta również z lepszej dokumentacji i wsparcia. jQuery jest kompatybilny z API.
**
**
W końcu chcemy pomóc ludziom szybciej projektować świetne produkty - a tym razem oznacza to przyspieszenie najbardziej responsywnego frameworka front-end na świecie.
źródło
Z tego, co przeczytałem, ludzie wydają się mocno skłaniać się ku Zepto. Najczęstszym powodem tego jest rozmiar pliku, ale jQuery 2 jest w rzeczywistości szybszy niż Zepto po załadowaniu. Nie znajdziesz też zbyt dużego wsparcia dla Zepto, ponieważ większość ludzi rozwija się wokół jQuery. Nie sugeruję, aby nie używać Zepto, ale powinieneś sprawdzić, dlaczego chcesz go używać i czy inne biblioteki JavaScript, z którymi korzystasz, lub konflikt z nim.
Powiedziałbym, że to zależy od twojego projektu. Do użytku osobistego lub ograniczonego Zepto może być lepszą opcją. Jednak jQuery jest znacznie bardziej obsługiwany przez inne biblioteki i jeśli rozmiar pliku jest jedyną rzeczą określającą przyczynę, jest on wadliwy. JavaScript powinien zostać załadowany po załadowaniu strony, dlatego w żadnym przypadku nie wpłynie to na czas ładowania strony.
Oto test wydajności obejmujący jQuery 1.7.2, Zepto 1.0rc1, a także jQMobi 1.03.
źródło