开源中国

我们不支持 IE 10 及以下版本浏览器

It appears you’re using an unsupported browser

为了获得更好的浏览体验,我们强烈建议您使用较新版本的 Chrome、 Firefox、 Safari 等,或者升级到最新版本的IE浏览器。 如果您使用的是 IE 11 或以上版本,请关闭“兼容性视图”。
smartJQ首页、文档和下载 - 基于 jQuery 的重构压缩库 - 开源中国社区
全部项目分类
我要评价
MIT
JavaScript
跨平台
pikay
分享
收藏
6 人收藏
收录时间:2017-07-01
smartJQ 详细介绍

什么是 smartJQ?

smartJQ 是 jQuery 的重构压缩版,在 jQuery API 的模型上,黑盒情况下制作的库;

兼容所有现代化的浏览器,因为不需要像 jQuery 一样对旧版本浏览器(IE10之前)兼容,所以体积小很多;

相对 zepto 的优势

我们通常会使用 zepto 来代替 jQuery 做移动开发,因为zepto体积更精简;但是 zepto 相对 jQuery 有很多的不足;

  • 特有的选择器的缺乏(:eq :odd :last 等等)

  • 事件和数据机制存在缺陷(api和 jQuery 有一定出入,例如clone没有提供深克隆等)

  • 缺乏 animate 方法(某些场景不能用 css3 animation 替代,例如滚动动画等)

插曲:作者本是想基于 jQuery 开发某个框架(不考虑ie的框架),但是 jQuery 太大,和在一起的大小超出预期;而 zepto 和 JSLite 的很多API存在缺陷,于是才有 smartJQ。

而 smartJQ 补充了上面的缺陷。

体积对比


smartJQ 的定位

smartJQ 的定位是 zepto 的替代品,和 zepto 是竞争关系,smartJQ 有的 zepto 不一定有,zepto 有的 smartJQ 做的比它更好;

smartJQ 和 jQuery 是互补关系;smartJQ 解决了 jQuery 的文件太大的问题,jQuery弥补了兼容性问题。

如果想要研究 jQuery 原理,可以来看看 smartJQ 源代码,没有兼容代码的累赘,相对代码量更少,核心代码少,灵活,通俗易懂;

smartJQ 的生成实例,是通过扩展 Array.prototype 达到 类jQuery 的实例化的效果,所以 smartJQ 生成的对象不仅能使用jQuery API提供的方法,也能使用Array原生提供的方法。(考虑兼容性还是不要当成Array类型使用)

smartJQ 兼容 IE10 及以上(Edge)。


大家对 smartJQ 的评论 (全部 0 条评论)
{{repayCom.userName}}
顶部