jQuery学习笔记之jQuery.fn.init()的参数分析


Posted in Javascript onJune 09, 2014

jQuery学习笔记之jQuery.fn.init()的参数分析

从return new jQuery.fn.init( selector, context, rootjQuery )中可以看出
参数selector和context是来自我们在调用jQuery方法时传过来的.
那么selector和context都有哪些可能.

jQuery学习笔记之jQuery.fn.init()的参数分析

 

对于表格中的4~9行中的可能做具体分析.
jQuery学习笔记之jQuery.fn.init()的参数分析

如果selector是字符串,则首先检测是html代码还是#id.
126行的if语句:以"<"开头,以">"结尾,且长度>=3.则假设额这个是HTML片段,这里只是假设不一定就是合肥的html代码.比如"<div><guofsfsdfd>";
130行的else:表示不是html代码.这个时候用正则表达式来检测.
jQuery学习笔记之jQuery.fn.init()的参数分析
我对正则不是很懂.不过大致可以看懂,匹配的是html和id.匹配的结果赋值给match.

分析完了selector,context参数后,我们是不是忘了rootjQuery参数.
这个参数是jQuery内部定义的.不是我们手动从外部传入的.
从名字上我们大概能猜出这个参数的大概情况了:根部的jQuery对象.
看源码定义:

jQuery学习笔记之jQuery.fn.init()的参数分析
那么什么情况下,程序会用到这个参数呢?
1.当document.getElementById()查找失败,

jQuery学习笔记之jQuery.fn.init()的参数分析
2.selector是函数:

jQuery学习笔记之jQuery.fn.init()的参数分析
3.selector是选择器表达式,且未指定context;

jQuery学习笔记之jQuery.fn.init()的参数分析

Javascript 相关文章推荐
高性能WEB开发 flush让页面分块,逐步呈现 flush让页面分块,逐步呈现
Jun 19 Javascript
jQuery基础框架浅入剖析
Dec 27 Javascript
利用js 进行输入框自动匹配字符的小例子
Jun 29 Javascript
多种方式实现JS调用后台方法进行数据交互
Aug 20 Javascript
js实现按一下删除键删除整个单词附demo
Sep 05 Javascript
IE6兼容透明背景图片及解决方案
Aug 19 Javascript
基于javascript实现精确到毫秒的倒计时限时抢购
Apr 17 Javascript
为jQuery-easyui的tab组件添加右键菜单功能的简单实例
Oct 10 Javascript
jQuery实现返回顶部按钮和scroll滚动功能[带动画效果]
Jul 05 jQuery
jQuery替换节点元素的操作方法
Mar 18 jQuery
Elementui表格组件+sortablejs实现行拖拽排序的示例代码
Aug 28 Javascript
js如何验证密码强度
Mar 18 Javascript
用box固定长宽实现图片自动轮播js代码
Jun 09 #Javascript
jQuery实现的Div窗口震动特效
Jun 09 #Javascript
js动态创建标签示例代码
Jun 09 #Javascript
jquery中 $.expr使用实例介绍
Jun 09 #Javascript
jQuery select表单提交省市区城市三级联动核心代码
Jun 09 #Javascript
javascript控制在光标位置插入文字适合表情的插入
Jun 09 #Javascript
js判断元素是否隐藏的方法
Jun 09 #Javascript
You might like
Yii学习总结之安装配置
2015/02/22 PHP
jquery.validate使用攻略 第三部
2010/07/01 Javascript
js优化针对IE6.0起作用(详细整理)
2012/12/25 Javascript
jquery的冒泡事件的阻止与允许(三种实现方法)
2013/02/01 Javascript
qq悬浮代码(兼容各个浏览器)
2014/01/29 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之主动触发事件和模拟冒泡处理
2015/11/24 Javascript
JavaScript判断DIV内容是否为空的方法
2016/01/29 Javascript
JavaScript 继承详解(五)
2016/10/11 Javascript
JavaScript数组push方法使用注意事项
2017/10/30 Javascript
详解webpack运行Babel教程
2018/06/13 Javascript
JavaScript作用域链实例详解
2019/01/21 Javascript
javascript实现简易聊天室
2019/07/12 Javascript
js设置默认时间跨度过程详解
2019/07/17 Javascript
nodejs的安装使用与npm的介绍
2019/09/11 NodeJs
echarts.js 动态生成多个图表 使用vue封装组件操作
2020/07/19 Javascript
vue 扩展现有组件的操作
2020/08/14 Javascript
如何使用RoughViz可视化Vue.js中的草绘图表
2021/01/30 Vue.js
[03:48]2014DOTA2 TI专访71DK夺冠不靠小组赛高排名
2014/07/11 DOTA
[18:16]sakonoko 2017年卡尔集锦
2018/02/06 DOTA
Python实现把xml或xsl转换为html格式
2015/04/08 Python
python中常用检测字符串相关函数汇总
2015/04/15 Python
Python的装饰器模式与面向切面编程详解
2015/06/21 Python
pandas object格式转float64格式的方法
2018/04/10 Python
numpy给array增加维度np.newaxis的实例
2018/11/01 Python
python实现微信每日一句自动发送给喜欢的人
2019/04/29 Python
Python Matplotlib 基于networkx画关系网络图
2019/07/10 Python
pytorch实现Tensor变量之间的转换
2020/02/17 Python
python实现俄罗斯方块游戏(改进版)
2020/03/13 Python
Django实现图片上传功能步骤解析
2020/04/22 Python
Python eval函数原理及用法解析
2020/11/14 Python
CSS3实现多背景展示效果通过CSS3定位多张背景
2014/08/10 HTML / CSS
硕士研究生个人求职信
2013/12/04 职场文书
土木工程师职业规划范文
2014/03/07 职场文书
党员教师自我剖析材料
2014/09/29 职场文书
检讨书范文1000字
2015/01/28 职场文书
学生通报表扬范文
2015/05/04 职场文书