前面已经说了:
21,94 定义变量和函数jQuery=function(){}
96,283 给jQ对象添加方法和属性
285,347 extend:JQ的继承方法
349,817 扩展一些工具方法
877,2856 Sizzle:复杂选择器的实现
2880,3042 Callbacks:回调对象,实现函数的统一管理
3043,3183 Deferred:延迟对象:对异步的统一管理
3184,3295 support:功能检测
3308,3652 data():数据缓存
//数据缓存
$("div").data('name','imycode.cn')
$("div").data('name') //=>imycode.cn
//这里可能会出现问题,扩展基本类型和对象类型,如果是对象类型可能会出现内存泄漏,所以在JQ中的缓存机制是很巧妙的
3653,3797 queue():队列管理 dequeue():出队 [3746] 顺序管理
//定时器中是异步加载,所以是同时执行,可是如果需要它顺序执行就需要队列
$(div).animate({right:100})
$(div).animate({bottom:200})
$(div).animate({left:300})
//在JQ中可能是把这三个存到queue队列中,当一个执行完就调用dequeue让前面的出队
3803,4299 attr() prop() val() addClass():对元素属性的操作
4300,5128 on() trigger():事件操作的相关方法
5140,6057 DOM操作:add remove get 添加 获取 包装 删除 插入 筛选
6058,6620 css():样式的操作
浏览器支持程度,支持单位px em..
6621,7854 提交的数据和ajax()操作;跨域 请求script...ajax() load() getJson()
7855,8584 animate():运动的方法,show() hide() fidein() fideout()...
8585:8792 offset():位置和尺寸的方方;获取元素距离可视区的距离offset(width,height)...
8804,8821 JQ支持模块化的格式
支持AMD 而且支持 CommonJS 格式
8826 window.jQuery = window.$ = jQuery;
科普:
1.AMD/CMD/CommonJs是JS模块化开发的标准
2.CommonJs是服务端,AMD/CMD是浏览器
3.对应实现
CommonJs => nodejs;
AMD通过<script>标签引入RequireJs;
CMD则是引入SeaJs。
4.服务端是同步执行(一步一步执行,需要哪个模块服务端会停下来去加载模块);而浏览器采用异步加载,这就需要一个预处理,提前将模块下载好.
5.AMD是预加载,解析并执行,加载js时同时解析模块/CMD是懒加载,需要时在执行参考:
AMD/CMD/CommonJs到底是什么?它们有什么区别?:
https://blog.csdn.net/u012207...
CommonJs & AMD & CMD & ESM:
https://www.jianshu.com/p/906...
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。