jQuery和Zepto的差异有什么


本文摘自PHP中文网,作者青灯夜游,侵删。

差异:1、Zepto中,针对移动端去除了大量jQuery的兼容代码;2、使用jQuery时load事件的处理函数不会执行;使用Zepto时load事件的处理函数会执行;3、zepto中没有为原型定义extend方法,而jquery有。

本教程操作环境:windows10系统、jquery2.2.4,本文适用于所有品牌的电脑。

jQuery和Zepto的差异

1、Zepto更轻量级

2、Zepto是jQuery的精简,针对移动端去除了大量jQuery的兼容代码

3、部分API的实现方式不同

1)、针对移动端程序,Zepto有一些基本的触摸事件可以用来做触摸屏交互(tap事件、swipe事件),Zepto是不支持IE浏览器的。

2)、DOM操作的区别:添加id时jQuery不会生效而Zepto会生效

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

(function($) {

     $(function() {

         var $insert = $('<p>jQuery 插入</p>', {

             id: 'insert-by-jquery'

         });

         $insert.appendTo($('body'));

     });

})(window.jQuery);  

// <p>jQuery 插入<p>

 

Zepto(function($) { 

    var $insert = $('<p>Zepto 插入</p>', {

        id: 'insert-by-zepto'

    });

    $insert.appendTo($('body'));

});

// <p id="insert-by-zepto">Zepto 插入</p>

3)、事件触发的区别:使用jquery时load事件的处理函数不会执行;使用zepto时load事件的处理函数会执行

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

(function($) {

    $(function() {   

        $script = $('<script />', {

            src: 'http://cdn.amazeui.org/amazeui/1.0.1/js/amazeui.js',

            id: 'ui-jquery'

        });

 

        $script.appendTo($('body'));

 

        $script.on('load', function() {

            console.log('jQ script loaded');

        });

    });

})(window.jQuery);

 

Zepto(function($) { 

    $script = $('<script />', {

        src: 'http://cdn.amazeui.org/amazeui/1.0.1/js/amazeui.js',

        id: 'ui-zepto'

    });

 

    $script.appendTo($('body'));

 

    $script.on('load', function() {

        console.log('zepto script loaded');

    });

});

4)、事件委托的区别:zepto中,选择器上所有的委托事件都依次放入到一个队列中,而在jquery中则委托成独立的多个事件

5)、width() 与 height()的区别:zepto由盒模型(box-sizing)决定,用.width()返回赋值的width,用.css(‘width’)返回border等的结果;jquery会忽略盒模型,始终返回内容区域的宽/高(不包含padding、border).

6)、offset()的区别:zepto返回{top,left,width,height}; jquery返回{width,height}。zepto无法获取隐藏元素宽高,jquery可以

7)、zepto中没有为原型定义extend方法,而jquery有

8)、zepto的each方法只能遍历数组,不能遍历JSON对象。

jQuery 和 Zepto.js 表面看起来差不多,其实一些细节上差异很大,同时支持 jQuery 和 Zepto.js 是一件吃力不讨好的事情,这应该也是 Foundation 5 放弃支持 Zepto 的一个原因。

更多编程相关知识,请访问:编程视频课程!!

以上就是jQuery和Zepto的差异有什么的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

jQuery on bind之间有什么区别

jQuery如何增加标签属性

jQuery中$(function())的作用

jQuery怎么设置disabled属性?

jQuery怎么生成元素

一起来聊聊jQuery、javascript与js三者间的区别

jQuery怎样判断是否是json格式

jQuery对象和dom对象之间的差异

jQuery怎么跳转页面

zepto与react区别是什么

更多相关阅读请进入《jQuery》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...