Zepto和jQuery 2有什么区别?

jan*_*mon 80 jquery zepto

有两个类似的项目:

Zepto.js

Zepto是一个用于现代浏览器的极简主义JavaScript库,具有与jQuery兼容的API.

jQuery 2.0

jQuery 2.0 beta:这是你对未来的品味,jQuery可以更快更小,而不需要支持IE 6,7或8.它是特定于平台的HTML应用程序的绝佳选择.

这仅仅是关于性能还是他们遵循不同的方法?

MHD*_*MHD 51

Zepto.js和jQuery之间的主要区别是它们各自的文件大小Zepto.js的~20kb(缩小,而不是gzip)而不是jQuery的~80kb,而Zepto.js的~10kb(缩小,Gzip)而不是jQuery的~30kb.此外,Zepto对浏览器的支持IE<10是缺乏或不保证,其目标平台是:

  • Safari 5+(桌面)
  • Chrome 5+(桌面版)
  • Mozilla Firefox 4+
  • iOS 4+ Safari
  • Android 2.2+浏览器
  • 其他基于WebKit的浏览器/运行时
  • webOS 1.4.5+浏览器
  • BlackBerry Tablet OS 1.0.7+浏览器
  • 亚马逊Silk 1.0+
  • Opera 10+
  • Internet Explorer 10+

  • jquery 2是〜30kb,zepto是〜10kb,当它们都被压缩和缩小时.非gzipped,jquery 2仍然是~80kb,zepto是~30kb. (14认同)
  • Zepto和jQuery都支持自定义构建,因此厨房水槽尺寸可能不那么重要.不同之处在于jQuery具有更好的支持和性能,更频繁地更新,并且拥有更活跃的社区.Zepto的吸引力大大减弱,jQuery 2.0弥补了Zepto曾经填补的空白. (4认同)

asp*_*ino 23

jquery 2是〜30kb,zepto是〜10kb,当它们都被压缩和缩小时.非gzipped但缩小,jquery 2约为80kb,zepto约为30kb.

使用分析程序检查您网站的受众群体.如果大量用户使用IE9,则需要jquery和zepto不会飞.如果超过百分之几使用IE8和更低,你不能面对没有你的网站让他们搁浅,你将需要使用jquery 1.如果你的目标是最后一个,我很抱歉 - 很多新的闪亮玩具不适合你.

如果你正在为android/ios/phonegap等构建一个html5应用程序,那么你主要是针对webkit,所以zepto确实可以为你节省大量的内容.zepto存在的主要见解和原因是,当仅在webkit上运行时,很多jquery的跨平台解决方案根本就没有必要.

Zepto还添加了几个触摸事件处理程序来协助移动开发人员,但它主要是您需要考虑的页面权重与平台支持.


Bri*_*and 13

这是一个有点老问题,但我想添加性能.据我所知,Zepto比jQuery表现更好.

这个jsPerf显示了不同的结果.与Zepto相比,我可以经常使用jQuery的类选择(单个元素)137%.对于ID选择,我可以经常使用jQuery的285%.

考虑到大多数应用程序,这是一个巨大的交易,DOM交互是唯一重要的性能统计数据(除了网络请求).

另外看看那个perf,我可以看到我可以像jQuery那样频繁地执行document.getElementsByClassNAme 8326%,所以如果可能的话我们都应该抛弃所有这些:-)

  • 这不是Zurb的那些人所说的.他们从CSS框架中删除Zepto的原因之一是因为即使Zepto的文件较小,jQuery也优于Zepto.其他原因是因为许多插件是为jQuery编写的.看看他们的博客文章:http://zurb.com/article/1293/why-we-dropped-zepto (3认同)
  • @ricardozea,这个答案和那篇文章说同样的事情:选择器jQuery更快.但需要明确的是,您需要大约100个jsperfs才能完全测试库,然后聘请统计员来确定平均网站和普通用户的平均速度更快. (2认同)
  • 呵呵,不:-) 这就是我被告知的;我的发现是 jQuery 更快(至少对于选择器)。 (2认同)

Dav*_*son 5

Zepto缺少jQuery功能的deferred/promise API.有一个附加的,Simply Deferred,它可以解决这个问题:https://github.com/sudhirj/simply-deferred.