17
Различия между jQuery и Zepto.js. Важные моменты!
zepto.js, Программирование
Метки (теги) : javascript, jquery, zepto.js
Вот нашел время описать некоторые различия к работе с этими двумя javascript библиотеками. Первым делом нужно отметить самое главное отличие.
Отличие 1
jQuery кроссбаузерный. Zepto.js – нет, работает только с продвинутыми браузерами (Chrome, Opera, Firefox, Safari, а также все браузеры которые работают на движке webkit).
Отличие 2
Метод animate в jQuery может иметь 4 параметра, при этом только первый является обязательным.
Метод animate в Zepto.js может иметь 4 параметра, при этом только первый является обязательным.
Вроде бы никаких отличий, но есть подвох.
Такой код
$("#identification").animate({opacity:0}, 2000, function(){$(this).css({opacity:1});}); |
в Zepto.js работать не будет, так как пропущен параметр “ease”. А вот так работать будет
$("#identification").animate({opacity:0}, 2000); |
и вот так будет
$("#identification").animate({opacity:0}, 2000, "linear", function(){$(this).css({opacity:1});}); |
Отличие 3
Метод animate есть в Zepto.js, а вот метода stop для него я не нашел, по крайней мере для версии 1 и ниже.
Отличие 4
Не проверял будет ли работать и такая штука is(“:animate”).
Вот код jQuery этого метода
is: function( selector ) { return !!selector && ( typeof selector === "string" ? // If this is a positional selector, check membership in the returned set // so $("p:first").is("p:last") won't return true for a doc with two "p". POS.test( selector ) ? jQuery( selector, this.context ).index( this[0] ) >= 0 : jQuery.filter( selector, this ).length > 0 : this.filter( selector ).length > 0 ); }, |
А вот код этого же метода, но в Zepto.js
is: function(selector){ return this.length > 0 && zepto.matches(this[0], selector) }, |
Не правда ли красиво и лаконично…
Пока на этом все, далее следует …
Прежде чем писать статью с таким заголовком неплохо было бы разобраться в селекторах и экстеншенах. Так вот селекторы и .is(‘:animate’) это не то что вы думаете. :animate – это jQuery css extension. И их нет в Zepto.
Ну критиковать и я умею, предложите решения для остановки анимации и проверки происходит ли она в данный момент.