/js/jquery-1.5.1.min.js"> $(document).ready(function(){...getJSON('json.txt',function(data){ //遍历JSON中的每个entry //因为是用JSONArray返回的串...,格式是{{"abc":123},{"abc":456}},所以要用each //如果用JSONObject返回的串,格式为{"abc":123}就不要用each这一层了,直接data
Jquery未开发插件提供了两个方法: (1)Jquery.extend(object) -为Jquery类本身添加新的方法;代码如下: $.extend({ add:function(a,b...){ return a+b; } }); 调用方法:$.add(3,4) - $=Jquery 为jquery类添加了名为add的一个静态方法,之后便可以在引入jquery的地方,使用这个方法了...,$.add(3,4); (2)Jquery.fn.extend(object) $.fn相当于Jquery的命名空间,fn上的成员(方法function以及属性peoperty)会对每一个实例都有效果...=jquery.property,所以它是对property进行扩展,为jquery添加"成员函数",jquery的实例都可以使用这个"成员函数" 假设我们要开发一款插件,做一个自定义弹框,那么代码可以这么写...: $.fn.extend({ zdyAlert:function(){ alert('自定义插件!')
无 new 构造 实际上也是可以 new的,因为 jQuery是函数。而且和不用 new效果是一样的。new显示返回对象,所以和直接调用 jQuery函数作用效果是一样的。..._init = function (options) {}; }; 核心函数之一 extend 用法: jQuery.extend( target [, object1 ] [, objectN ] )...result1', result1.job); // $函数 加了一个属性 job // 前端开发工程师 // 2. jQuery.extend( target, object1) var result2...函数既可以实现给 jQuery函数可以实现浅拷贝、也可以实现深拷贝。...return jQuery; }; 总结 全文主要通过浅析了 jQuery整体结构,自执行匿名函数、无 new构造、支持多种规范(如commonjs、amd规范)、核心函数之 extend、链式调用、
六:jQuery插件 1.jQuery插件机制概述 jQuery插件的机制很简单,就是利用jQuery提供的jQuery.fn.extend()和jQuery.extend()方法,扩展jQuery的功能.... 2.jQuery插件机制语法 jQuery.fn.extend(object) 对jQuery对象进行方法扩展: jQuery.fn.extend({ "check":function...(object) 对jQuery全局进行方法扩展 jQuery.extend({ "min":function (i,j) { return i>j?...(ajax请求执行完成后调用的函数)function(data){//data:响应回来的数据 (xmlHttp.responseText)} type:返回内容的格式 text xml json...data:请求参数 | success:请求成功后的回调函数 error:请求失败时调用此函数 | dataType:服务器返回的数据类型 一般不需要自己设置,如果需要设置一般设置为 "json" async
分支 (10)使用 /**...*/ 进行多行注释,包括描述,指定类型以及参数值和返回值 (11)函数不应该有时候有返回值,有时候没有返回值 (12)语句结束一定要加分号 (13)for 循环必须使用大括号...else { target[name] = options[name]; } } return target; } }; 42. jquery.extend...与 jquery.fn.extend的区别?...jquery.extend 为jquery类添加类方法,可以理解为添加静态方法 jquery.fn.extend: 源码中jquery.fn = jquery.prototype,所以对jquery.fn...的扩展,就是为jquery类添加成员函数 使用:jquery.extend扩展,需要通过jquery类来调用,而jquery.fn.extend扩展,所有jquery实例都可以直接调用。
一、jquery的插件机制 为了方便用户创建插件,jquery提供了jQuery.extend()和jQuery.fn.extend()方法。 1. jQuery.extend() 方法有一个重载。...jQuery.extend(object) ,一个参数的用于扩展jQuery类本身,也就是用来在jQuery类/命名空间上增加新函数,或者叫静态方法,例如jQuery内置的 ajax方法都是用jQuery.ajax...成员函数"。...jQuery.fn.extend(object)和jQuery.extend(object)方法一 定要区分开来。 二、自执行的匿名函数/闭包 1. 什么是自执行的匿名函数?..., 由于返回值是一 个函数, 故而遇到();时, 便会被执行.
一、jquery的插件机制 为了方便用户创建插件,jquery提供了jQuery.extend()和jQuery.fn.extend()方法。...jQuery.extend(object) ,一个参数的用于扩展jQuery类本身,也就是用来在jQuery类/命名空间上增加新函数,或者叫静态方法,例如jQuery内置的 ajax方法都是用jQuery.ajax...我们知道扩展原型上的方法,就相当于为对象添加”成员方法“,类的”成员方法“要类的对象才能调用,所以使用jQuery.fn.extend(object)扩展的方法, jQuery类的实例可以使用这个“成员函数...jQuery.fn.extend(object)和jQuery.extend(object)方法一定要区分开来。 二、自执行的匿名函数/闭包 1...., 由于返回值是一 个函数, 故而遇到();时, 便会被执行.
Dom与jquery互相转换 DOM是文档对象模型(Document Object Model,简称DOM) jQuery是一个JavaScript 库,极大地简化了JavaScript编程。...data.json", true); request.onreadystatechange = function(){ //readyState有5种值,0是未初始化...success: function (data) { console.log(data); //在控制台打印服务器端返回的数据 for(var...; } public void setExtend(Map extend) { this.extend = extend; } } 将json...这个函数不能用于XML文档。但可以用于XHTML文档 html(val):设置每一个匹配元素的html内容。这个函数不能用于XML文档。但可以用于XHTML文档。
但是在内部,是存在 jQuery.fn.extend 和 jQuery.extend 两个 extend 方法的,而区分这两个 extend 方法是理解 jQuery 的很关键的一部分。...target // 如果 i 返回没经过处理的 target,也就是 arguments[0] // 也就是如果不传需要覆盖的源,调用 $.extend 其实是增加 jQuery...(),只是返回引用this // jQuery.merge 把 elems 节点合并到新的 jQuery 对象 // this.constructor 就是 jQuery 的构造函数 jQuery.fn.init...,所以 this.constructor() 返回一个 jQuery 对象 // 由于 jQuery.merge 函数返回的对象是第二个函数附加到第一个上面,所以 ret 也是一个 jQuery 对象...window.jQuery = _jQuery; } // 这里返回的是 jQuery 库内部的 jQuery 构造函数(new jQuery.fn.init()) // 像使用
,这个实例对象又作为返回值被jQuery方法返回出去了,成为了我们平时调用$('selector')所拿到的返回值。...看到这里是不是感觉有点绕,绕了一圈在jQuery()方法里面其实就是返回了一个jQuery实例嘛,为什么不直接返回new jQuery()呢?...我们直接在代码里面搜ajax,我们发现他包在了jQuery.extend的参数里面: ? 那jQuery.extend是我们必须要看的方法: ?...网上经常看到有人问,jQuery.extend和jQuery.fn.extend有啥区别。...jQuery是通过$.fn.extend和$.extend来做的,而Zepto是通过自执行函数,将Zepto作为参数传进去,然后在自执行函数里面直接对$和$.fn添加属性来实现的。
'' null undefined NaN 0 false 返回空的jQuery对象 console.log($()) console.log($('')) console.log...selector) { return this; } 处理函数 判断是否为函数,如果是则将传入的参数作为ready的回调函数传入。...对象中返回 选择器: 会将找到的所有元素存储到jQuery对象中返回 3.数组: 会将数组中存储的元素依次存储到jQuery对象中立返回...selector); // 1.传入 '' null undefined NaN 0 false, 返回空的jQuery对象 if (!...返回加工好的this(jQuery) } // 2.2 判断是否是选择器 else { // 1.
jQuery为开发插件提拱了两个方法,分别是: 1、jQuery.fn.extend(); //dom方法 2、jQuery.extend(); // 工具方法 ---- jQuery.fn jQuery.fn...]) b、用一个或多个其他对象来扩展一个对象,返回被扩展的对象 var settings = { validate: false, limit: 5, name: "foo" }; var...“成员函数”。...jQuery类的实例可以使用这个“成员函数”。 比如我们要开发一个插件,做一个特殊的编辑框,当它被点击时,便alert 当前编辑框里的内容。...jQuery.extend() 的调用并不会把方法扩展到对象的实例上,引用它的方法也需要通过jQuery类来实现,如jQuery.init(),而 jQuery.fn.extend()的调用把方法扩展到了对象的
返回的是一个类似数组对象,jquery可以通过$p[0]下标来获取对应的对象,也可以获取$p 的长度 ?...但选中这个jquery对象,返回的还是类数组,我们分辨不了,我们只能通过length来分辨jquery对象是否不存在 ?...get()不写参数把所有对象转为DOM对象返回 3、dom对象转换成jquery对象 dom对象转换成jquery对象,只需要加上一个#号 ?...目标对象(第一个参数)将被修改,并且将通过$.extend()返回。...传递处理函数给.ready()方法,能保证DOM准备好后就执行这个函数,因此,这里是进行所有其它事件绑定及运行其它 jQuery 代码的最佳地方。
闭包:js函数对象不仅包含函数的代码逻辑,还引用了当前的作用域链, 函数对象可以通过作用域链相互关联起来,函数体内部的变量都可以保存在函数作用域内 这种特性在计算机科学文献中称为闭包,所有的js函数都是闭包...工厂方法,调用jQuery工厂方法返回的才是真正的jQuery对象 */ var jQuery = function(selector){ return new...扩展方法,除了可以扩展jQuery外,还可以扩展你指定的对象 * jQuery.extend 扩展jQuery,可以理解为扩展类方法 * jQuery.fn.extend 扩展jQuery.fn...,即jQuery实例可以使用,可以理解为扩展实例方法 * * 具体用法 * 1.jQuery.extend(obj) 扩展jQeury * 2.jQuery.extend...(true, obj) 深度扩展jQuery * 3.jQuery.extend(obj1, obj2) 扩展obj1 * 4.jQuery.extend(true obj1, obj2
不被修改, 所以需要接受一个正确的undefined jQuery中的extend方法 jQuery中有众多的方法,但这么多的方法不可能都是一一用每一个函数来封装,因此应用到了extend继承的方法来对这些方法进行管理...extend方法中key为isTest的值, 而在extend方法中,key为isTest的值为一个函数,返回给this对象 ,而this就是kjQuery,就相当于用kjQuery调用了isTest...()这个方法 */ kjQuery.isTest(); //用构造函数prototype来解释,对象添加实例方法 kjQuery.prototype.extend...对象中返回 选择器:会将所有找的元素存储到jQuery对象中返回 3.数组 会将数组中的元素依次存入到jQuery对象中返回 4.除上述以外的 会将传入的数据储存到jQuery对象中返回 5...jQuery对象中返回 3.数组 会将数组中的元素依次存入到jQuery对象中返回 4.除上述以外的 会将传入的数据储存到jQuery对象中返回 */ (function(window, undefind
上一章,讨论的是jQuery对象及其原型上的extend()方法,在源码中,实现了支持开发者自行扩展新方法的功能,但其实jQuery也通过对extend()传入一个对象参数来添加官方扩展方法,这些工具方法都是扩展在...//总览: jQuery.extend({ expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), isReady...proto){ return true; } // 对象如果是被全局对象函数构造出来的,则返回其构造函数本身 // 这里hasOwn...false } }) 只有键值对形式的js对象,才返回true,才被视为纯对象,即使是构造函数和普通函数等“对象”也不行。...)); 时间关系,今天就写这么多吧,更多关于jQuery.extend()扩展出来的工具方法,请看下篇。
; (function (ROOT) { // 构造函数 var jQuery = function (selector) { // 在jQuery中直接返回new过的实例,这里的init...中利用上面实现的扩展机制,添加了许多方法,其中 // 直接添加在构造函数上,被称为工具方法 jQuery.extend({ isFunction: function () { },...jQuery.fn.init.prototype = jQuery.fn; 而在构造函数jQuery中,返回了init的实例对象。...var jQuery = function (selector) { // 在jQuery中直接返回new过的实例,这里的init是jQuery的真正构造函数 return new jQuery.fn.init...也就是说,当我们通过jQuery.extend扩展jQuery时,方法被添加到了jQuery构造函数中,而当我们通过jQuery.fn.extend扩展jQuery时,方法被添加到了jQuery原型中。
//源码4686行 jQuery.fn.extend( { queue: function( type, data ) { xxx return jQuery.queue( this...) (2)$.queue()和$.dequeue() 这俩是jQuery.extend()中的方法,也就是 jQuery 内部使用的方法。...注意: jQuery.queue()始终返回queue数组,而$().queue()会返回 jQuery 对象或者是queue数组。...源码: jQuery.fn.extend( { //出队 //移出队头的函数并执行它 //源码4717行 dequeue: function( type ) {...jQuery.Callbacks()是链式调用的关键函数。
接昨天的jQuery原型属性方法部分。 each()方法:为每个匹配的元素集合执行回调函数,是一个jQuery版的遍历方法。...构造函数的实例对象,凡是jQuery对象原型上的方法,在实例对象中都可以被访问到的。...这个each()方法其实通过返回真实的each方法的引用来实现的,具体在后面读到jQuery.extend属性时再看。 map()方法,同样也是一个遍历方法。...至于回调函数中,是通过call方法来调用用户定义并传入的回调函数,再将这个内部回调函数处理后的结果返回出来。...说的不太让人懂,虽然用也会用,不就是在jQuery实例对象进行DOM选择链条中返回未选状态么,但其实看代码实现更明确: jQuery.prototype = { end: function(){
基础性内容,大神可以略过,O(∩_∩)O~ 1.jQuery.fn.extend用于扩展jQuery.prototype对象,可以采用这种方式为jQuery添加自定义方法 2.jQuery.extend...是用于扩展一个类的功能,该函数原型为 jQuery.extend( target [, object1 ] [, objectN ] ) ] ) 运行完该函数后,object1以及objectN的特性会被组合到...target对象上,因此该函数会修改target对象,为了防止target对象被修改,可以传入{},仅仅使用jQuery.extend的返回值来使用对象merge后产生的类。...如果该函数仅有一个参数传入时,功能跟jQuery.fn.extend一样,可以用于扩展jQuery原型的方法。...之后增加了一个深度版的: jQuery.extend( [deep ], target, object1 [, objectN ] ) 来个例子来说明该方法的效果 var object1