为什么$(selector)之后,返回的是jQuery对象?
来源:互联网 发布:企业沟通软件 编辑:程序博客网 时间:2024/06/06 01:54
1)为什么$(selector)之后,返回的是jQuery对象?
答:从jQuery的源代码中,我们可以知道:var $ = jQuery.因此当我们$(selector)操作时,其实就是jQuery(selector),创建的是一个jQuery对象.当然正确的写法应该是这样的:var jq = new $(selector);而jQuery使用了一个小技巧在外部避免了new,在jquery方法内部:jQuery = function( selector, context ) {
// The jQuery object is actually just the init constructor 'enhanced'
return new jQuery.fn.init( selector, context, rootjQuery );
},
2) 问:为什么创建一个jQuery对象之后,我们可以这样写$(selector).each(function(index){…});进行遍历操作呢?
答:其实jQuery(selector)方法调用时,在jQuery(selector)方法内部,最后返回的是一个数组:return this.setArray(a);而each方法体内部是一个for循环,在循环体内是这样调用的:method.call(this[i],i).
3) 问:为什么jQuery能做到jQuery对象属性/方法/事件的插件式扩展?
答:如果您有一些javasciprt的面向对象方面的知识,就会知道,jQuery.prototype原型对象上的扩展属性/方法和事件,将会给jQuery的对象\”扩展”.基于这一点,jQuery是这样写的:jQuery.fn = jQuery.prototype.所以,当我们扩展一个插件功能时,如下:
jQuery.fn.check = function() {
return this.each(function() {
this.checked = true;
});
};
其实就是:
jQuery.prototype.check = function() {
return this.each(function() {
this.checked = true;
});
};
- 为什么$(selector)之后,返回的是jQuery对象?
- django中的模型为什么返回的是对象
- jQuery在异步请求数据返回后,调用$("selector").html(data.content);之后因为一些特殊字符或者',"不能显示内容的问题解决办法
- struts2返回JSON,jquery解析JSON(返回的可能是LIST,MAP,对象,单个值)
- 返回的是对象数组
- php jquery jsonp 跨域访问,jsoncallback无返回?!!!,无解了,为什么没返回,没返回!原来是是这个jsoncallback的问题
- 为什么strcpy的返回值是char* ?
- 为什么strcpy的返回值是char* ?
- C++运算符重载,+-*/的重载,返回值为什么是对象而不是对象的引用?而流操作符<< 和 >> 却返回的是引用?
- C++运算符重载,+-*/的重载,返回值为什么是对象而不是对象的引用?而流操作符<< 和 >> 却返回的是引用?
- jquery offset()的对象如果是display:none的,则返回值为0,0
- 关于jQuery对象的两个属性selector和context
- 关于jQuery对象的两个属性selector和context
- 为什么不能返回局部对象的应用
- i = i++ 之后 i 的值为什么是 0
- 使用jQuery POST提交数据返回的JSON是字符串不能解析为JSON对象
- 使用jQuery POST提交数据返回的JSON是字符串不能解析为JSON对象
- 使用jQuery POST提交数据返回的JSON是字符串不能解析为JSON对象
- 字符B中含有多少字符A C++||JAVA
- JavaScript在Unicode值和字符串中的字符间转换
- 关于ubuntu内核升级的问题
- python PIL图片处理模块实例
- js 数组与对象的区别
- 为什么$(selector)之后,返回的是jQuery对象?
- Android学习记录(十二) http之base/digest鉴权。
- mysql主从复制的高可用解决方案
- Python-OpenCV 图像与视频处理
- NVIDIA JETSON 连接九轴IMU传感器(GY-85模块)
- 驱动编程-idt hook--中断描述符表
- 分布式配置管理平台 Disconf
- Spring @PostConstruct and @PreDestroy example
- getdate.php var_dump($arry);