jQuery = window.jQuery = window.$ = function( selector, context ) {
return new jQuery.fn.init( selector, context );
}
.
.
.
jQuery.fn = jQuery.prototype = {
init: function( selector, context ) {
......
}
其中 jQuery.fn =jQuery.prototype={...} 对这个地方不是很明白,{...}到底作为jQuery的原型对象、还是jQuery.fn的原型对象? 求解
解决方案 »
- fancybox 谁用过,那个图片放大怎么顶置?
- IE和Chrome下框架页面通过js提交数据返回后页面traget出现问题。
- 【js放大镜问题】
- 为什么我这样动态创建的对象不能显示????
- 大侠指点一下,web打印iframe页的问题
- 关于页面跳转时
- 求在网页上运行exe文件的方法!!!
- 急:在线等待,我在一个网页的一个表格单元格中加入了一个<iframe src="1.htm" name=frameMain></iframe>,请问怎样在原来的网页()构架
- form 提交的问题.
- 我有上中下三个框架,在下框架中WINOPEN一个小窗口,如何在它关闭的时候,在中框架内的
- js 中关于保存文本内容的方法求助
- 页面打印问题,求方法
init: function( selector, context ) {
......
}首先执行:
jQuery.prototype = {
init: function( selector, context ) {
......
}然后:jQuery.fn = jQuery.prototype
只是prototype是我们所说的原型对象。而fn是我们定义的一个普通属性。
这样以来他们等价了
他们2个就是一个东西了!要扩展jquery 方法,直接
$.fn.XXXX 就可以了!因为:$=jQuery ==>
$.fn = jQuery.fn
因为:jQuery.fn = jQuery.prototype ==>
$.fn=jQuery.prototype==》
$.fn.XXXX 相当于 jQuery.prototype.XXXX
<div id='div2'></div>$("#div1"),$("#div2") 每次查询对象时、调用init函数,而原型对象下的方法是共享的!!!!
jquery 与 widnow.jquery() window.$()指向的是同一个对象
jQuery.fn = jQuery.prototype = {
init: function( selector, context ) {
......
}
jquery.fn jquery.prototype 指向的也是同一个对象
并且此对象具有一个init方法但是prototype仅仅只是jquery对象的一个属性 与fn一样 是个指针并非javascript构造函数的属性 prototype对象
在这里好像也不是为类添加一个成员个人理解///
并返回一个节点列表/////
function $(){ var elements=[];
for(var i=0;i<arguments.length;i++){
var element=arguments[i];
if(typeof element=='string')
element=document.getElementById(element);
if(arguments.length==1)
return element;
elements.push(element);
}
return elements; }这个prototype 框架 这个格式工厂函数 还是比较好!!!!