博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jQuery2.0.3源码分析-1(持续更新中......)
阅读量:5939 次
发布时间:2019-06-19

本文共 1006 字,大约阅读时间需要 3 分钟。

jQuery2.0.3源码包下载地址:

<1>jquery 1.x系列和2.x系列的区别是:2.x不再支持IE6 7 8
<2>
(function(){
    //具体实现代码
})();
此为匿名函数的自执行,这样的好处为:函数中的变量是局部变量,不会影响外部的变量,其实这个是非常重要的,在js中引用的第三方库,这样实现是为了不影响我们自己写的js代码;
那么有时候我们会考虑,既然是局部变量,那么我们怎么在外边通过jQuery或$来调用的jquery中的方法呢,其实很简单,我们可以通过将window这个浏览器中js的全局变量传入进去,通过例如:
window.$ = $的方式来实现在jquery外部调用;
<3>jquery中21-94行定义了一些变量和函数
最重要的是jQuery = function(){}
8826行,提供了jQuery对外的接口  window.jQuery = window.$ = jQuery;
96-283行,给jQuery对象添加一些方法和属性
<4>思考我们经常使用jQuery的情况$('#div1').html();来调用html方法,类似我们直接调用方法时候使用的,可以看出来$('div1')返回的是一个对象,那么jQuery也是面向对象的这么一种编程方式,在jquery代码中:
61-64行:jQuery = function( selector, context ) {
// The jQuery object is actually just the init constructor 'enhanced'
return new jQuery.fn.init( selector, context, rootjQuery );
},
可以看出来,返回的是一个初始化的对象
<5>285-347行:extend:jQuery的继承方法
<6>349-817行:jQuery.extend() 扩展一些工具方法
类似于$.trim() $.proxy()等一些方法,这些都是jQuery扩展的静态属性和静态方法,这两种方法和上边提到的$('div1').css()等一些方法的不同在于,它不仅仅可以针对jQuery对象使用,也可以供普通的js使用

转载于:https://www.cnblogs.com/sunyingyuan/p/3686215.html

你可能感兴趣的文章
STM32F103--(二) GPIO实践
查看>>
关于开源无线路由器的资料
查看>>
Oracle 分页
查看>>
170多个Ionic Framework学习资源(转载)
查看>>
Azure:不能把同一个certificate同时用于Azure Management和RDP
查看>>
Silverlight 控件的验证
查看>>
Directx11教程(15) D3D11管线(4)
查看>>
Microsoft Excel软件打开文件出现文件的格式与文件扩展名指定格式不一致?
查看>>
ios ble 参考
查看>>
[转]Pass a ViewBag instance to a HiddenFor field in Razor
查看>>
linux中注册系统服务—service命令的原理通俗
查看>>
基于托管C++的增删改查及异步回调小程序
查看>>
Oracle DBMS_STATS 包 和 Analyze 命令的区别
查看>>
给Visual Studio 2010中文版添加Windows Phone 7模板
查看>>
linux下基本命令
查看>>
windows server 2008R2 上安装配置freesshd
查看>>
手动删除SVCH0ST.EXE的方法
查看>>
已释放的栈内存
查看>>
Android网络之数据解析----SAX方式解析XML数据
查看>>
Java递归列出所有文件和文件夹
查看>>