Jquery源码
wespten
悦分享
网上搜索资料的朋友,一定都会有这样一个感受,那就是知识点有时太过零散,有时又存在误区,有时又太过简短,而有时又缺乏深度,一个系统又详细的分享小天地,为真正想去学习或了解某些事情的朋友,持续提供有价值且有深度的内容。
展开
-
深入学习jquery源码之插件机制(二)
高级插件概念链接提供对默认插件设置的公共访问我们可以而且应该对上面的代码做出的改进并公开默认的插件设置。 这很重要,因为它使插件用户很容易用最少的代码覆盖/自定义插件。 这就是我们开始利用函数对象的地方。// Plugin definition.$.fn.hilight = function( options ) { // Extend our default option...原创 2018-12-22 14:57:04 · 291 阅读 · 0 评论 -
深入学习jquery源码之ajaxSetup()
深入学习jquery源码之ajaxSetup()ajaxComplete(callback)概述:AJAX 请求完成时执行函数。Ajax 事件。XMLHttpRequest 对象和设置作为参数传递给回调函数。参数:callback Function待执行函数使用AJAX 请求完成时执行函数。$("#msg").ajaxComplete(function(e...原创 2018-12-24 09:32:27 · 502 阅读 · 0 评论 -
深入学习jquery源码之index()和contains()
深入学习jquery源码之index()index([selector|element])概述:搜索匹配的元素,并返回相应元素的索引值,从0开始计数。如果不给 .index() 方法传递参数,那么返回值就是这个jQuery对象集合中第一个元素相对于其同辈元素的位置。如果参数是一组DOM元素或者jQuery对象,那么返回值就是传递的元素相对于原先集合的位置。如果参数是一个选择器,...原创 2018-12-24 09:32:12 · 620 阅读 · 0 评论 -
深入学习jquery源码之easyui自定义列表
深入学习jquery源码之easyui自定义列表(function ($) { function init(target) { var t = $(target), state = $.data(target, 'gridsub'), key = state.options.key; var editIn...原创 2018-12-24 09:30:45 · 282 阅读 · 0 评论 -
深入学习jquery源码之data()
深入学习jquery源码之data()jQuery.data(element,[key],[value])概述:在元素上存放数据,返回jQuery对象。注意:这是一个底层方法。你应当使用.data()来代替。此方法在jQuery 1.8中删除,但你仍然可以通过$._data(element, "events")调试事件数据。请注意,这是不支持的公共接口;实际的数据结构可能会改变...原创 2018-12-24 09:30:30 · 650 阅读 · 0 评论 -
深入学习jquery源码之get()与reverse ()
深入学习jquery源码之get()get([index])概述:取得其中一个匹配的元素。 num表示取得第几个匹配的元素。这能够让你选择一个实际的DOM 元素并且对他直接操作,而不是通过 jQuery 函数。$(this).get(0)与$(this)[0]等价。参数:[index] Number取得第 index 个位置上的元素get()取得所有匹配的 DO...原创 2018-12-24 09:30:16 · 607 阅读 · 0 评论 -
深入学习jquery源码之获取url中参数插件
深入学习jquery源码之获取url中参数插件(function (window, $, undefined) { // 定义 通用工具方法 扩展对象基元 coreUtil = function () { return Object.apply(this, arguments); }, // 定义 jQuery 扩展对象基元 coreJquery = fun...原创 2018-12-24 08:48:56 · 295 阅读 · 0 评论 -
深入学习jquery源码之noConflict()
深入学习jquery源码之noConflict()jQuery.noConflict([extreme])概述:运行这个函数将变量$的控制权让渡给第一个实现它的那个库。执行 var jq=$.noConflict(); 后,$ 将不再控制当前的jQuery, 而是让渡给了jq变量,此时jq("div") 和 jQuery("div")是等价的。这有助于确保jQuery不会与其他...原创 2018-12-24 08:48:40 · 306 阅读 · 0 评论 -
深入学习jquery源码之闭包
深入学习jquery源码之闭包开发jQuery插件的时候会用(function($){})(jQuery); 这个闭包函数来包裹(function($) { // all JS code here})(jQuery);自执行函数写法, 函数声明后立即执行. 并且设置函数执行时context为this, 这里的this因执行环境会有所不同, 浏览器环境应该是window.这里...原创 2018-12-23 20:58:50 · 522 阅读 · 0 评论 -
深入学习jquery源码之查询选择插件的实现
深入学习jquery源码之上传查询选择插件的实现;(function($){ var defaults = { url : "", fieldCode: "", multi : false, area: ['40%','80%'], code:['code','name'] //注意顺序,先是code,再是name }; function rend...原创 2018-12-23 20:09:38 · 275 阅读 · 0 评论 -
深入学习jquery源码之上传附件插件的实现
深入学习jquery源码之上传附件插件的实现/** * 上传附件通用JS (基于layerUI) */;(function($){ var defaults = { url : "/attach/upload", fieldCode : "aboutDocument", //业务字段编码 fieldName : "相关文件", ...原创 2018-12-23 19:42:56 · 411 阅读 · 0 评论 -
深入学习jquery源码之before()和after()
深入学习jquery源码之before()和after()after(content|fn)概述在每个匹配的元素之后插入内容。参数content String, Element, jQuery插入到每个目标后的内容function Function函数必须返回一个html字符串。在所有段落之后插入一些HTML标记代码。<p>I would li...原创 2018-12-30 12:07:42 · 1014 阅读 · 0 评论 -
深入学习jquery源码之高德地图组件的使用
深入学习jquery源码之高德地图组件的使用高德地图组件是一类高度模块化的LBS服务组件,开发者通过调用相应标签便可轻松实现诸如在地图上标注点、查找附近poi、公交/驾车线路规划等功能。该类组件仅针对手机浏览器类的应用,与API相比,标签方式调用更为简单,模块化程度更高,可以极大地降低开发成本。使用高德地图,具体请参考管网 https://lbs.amap.com/api/javasc...原创 2018-12-23 18:42:17 · 1027 阅读 · 0 评论 -
深入学习jquery源码之弹出框插件实现
深入学习jquery源码之弹出框设计jquery自带的提示框$.messager.confirm('提示', '您确定通过吗?', function (r) { if (r) { }}); 弹出框插件function (window, $, undefined) { var COOKIE_USER = "COOKIE_USER", ...原创 2018-12-24 09:32:43 · 328 阅读 · 0 评论 -
深入学习jquery源码之makeArray()与toArray()
makeArray(obj)概述将类数组对象转换为数组。类数组对象共性有 2点: 1.拥有 length属性。 2.可以通过下标来访问元素。 类数组对象相较于数组,少了很多便捷的API,因此很多框架提供了转换方法。 最简便的方法,是利用 Array.prototype上的 slice方法: function makeArray(array){ return Arr...原创 2018-12-24 22:09:07 · 473 阅读 · 0 评论 -
深入学习jquery源码之extend()
jQuery.extend([deep], target, object1, [objectN])概述:用一个或多个其他对象来扩展一个对象,返回被扩展的对象。如果不指定target,则给jQuery命名空间本身进行扩展。这有助于插件作者为jQuery增加新方法。 如果第一个参数设置为true,则jQuery返回一个深层次的副本,递归地复制找到的任何对象。否则的话,副本会与原对象共享结构...原创 2018-12-23 19:20:06 · 732 阅读 · 0 评论 -
深入学习jquery源码之jQuery的构造函数与实例化
深入学习jquery源码之jQuery的构造函数与实例化创建jQuery对象的整个流程如下:1、调用$()方法;2、调用jQuery.prototype.init()构造函数;3、根据选择器不同返回不同的jQuery对象;4、不同jQuery对象中公用的方法写在jQuery.prototype中;5、将jQuery.prototype传递给jQuery.prototype....原创 2018-12-26 16:24:59 · 548 阅读 · 0 评论 -
深入学习jquery源码之bind()与delegate()
深入学习jquery源码之bind()与delegate()bind(type,[data],fn)概述为每个匹配元素的特定事件绑定事件处理函数。参数type,[data],function(eventObject) String,Object,Functiontype: 含有一个或多个事件类型的字符串,由空格分隔多个事件。比如"click"或"submit",还可以是自定...原创 2018-12-25 23:48:03 · 414 阅读 · 0 评论 -
深入学习jquery源码之on()和off()与one()
深入学习jquery源码之on()和off()与one()on(events,[selector],[data],fn)概述在选择元素上绑定一个或多个事件的事件处理函数。on()方法绑定事件处理程序到当前选定的jQuery对象中的元素。在jQuery 1.7中,.on()方法 提供绑定事件处理程序所需的所有功能。帮助从旧的jQuery事件方法转换,see .bind(), .del...原创 2018-12-25 23:47:31 · 971 阅读 · 0 评论 -
深入学习jquery源码之empty()与返回值remove()
深入学习jquery源码之empty()与返回值remove()empty()概述删除匹配的元素集合中所有的子节点。把所有段落的子元素(包括文本节点)删除<p>Hello, <span>Person</span> <a href="#">and person</a></p>$("p&q原创 2018-12-25 09:05:47 · 762 阅读 · 0 评论 -
深入学习jquery源码之wrap()和wrapAll()
深入学习jquery源码之wrap()和wrapAll()wrap(html|element|fn)概述把所有匹配的元素用其他元素的结构化标记包裹起来。这种包装对于在文档中插入额外的结构化标记最有用,而且它不会破坏原始文档的语义品质。这个函数的原理是检查提供的第一个元素(它是由所提供的HTML标记代码动态生成的),并在它的代码结构中找到最上层的祖先元素--这个祖先元素就是包裹元素。...原创 2018-12-25 09:05:32 · 533 阅读 · 0 评论 -
深入学习jquery源码之html()与text()和val()
深入学习jquery源码之html()与text()和val()html([val|fn])概述取得第一个匹配元素的html内容。这个函数不能用于XML文档。但可以用于XHTML文档。在一个 HTML 文档中, 我们可以使用 .html() 方法来获取任意一个元素的内容。 如果选择器匹配多于一个的元素,那么只有第一个匹配元素的 HTML 内容会被获取。返回值:String参...原创 2018-12-25 09:05:08 · 614 阅读 · 0 评论 -
深入学习jquery源码之isFunction()和isPlainObject()
深入学习jquery源码之isFunction()和isPlainObject()isArray(obj)概述测试对象是否为数组。参数obj Object用于测试是否为数组的对象$("b").append( " + $.isArray([]) );<b>true</b>isFunction(obj)概述测试对象是否为函数。...原创 2018-12-25 09:04:56 · 545 阅读 · 0 评论 -
深入学习jquery源码之first()与eq()和end()
深入学习jquery源码之first()与eq()和end()eq(index|-index)概述获取第N个元素参数index Integer一个整数,指示元素基于0的位置,这个元素的位置是从0算起。index Integer一个整数,指示元素的位置,从集合中的最后一个元素开始倒数。(1算起)获取匹配的第二个元素<p> This is just...原创 2018-12-25 09:04:43 · 574 阅读 · 0 评论 -
深入学习jquery源码之slice
深入学习jquery源码之sliceslice(start, [end])概述选取一个匹配的子集与原来的slice方法类似参数start Integer开始选取子集的位置。第一个元素是0.如果是负数,则可以从集合的尾部开始选起。end Integer结束选取自己的位置,如果不指定,则就是本身的结尾。 选择第一个p元素<p>Hello<...原创 2018-12-24 22:08:51 · 253 阅读 · 0 评论 -
深入学习jquery源码之append()和prepend()
深入学习jquery源码之append()和prepend()append(content|fn)概述向每个匹配的元素内部追加内容。这个操作与对指定的元素执行appendChild方法,将它们添加到文档中的情况类似。参数content String, Element, jQuery要追加到目标中的内容function(index, html) Function...原创 2018-12-30 12:05:43 · 1131 阅读 · 0 评论 -
深入学习jquery源码之replaceWith()和replaceAll()
深入学习jquery源码之replaceWith()和replaceAll()replaceWith(content|fn)概述将所有匹配的元素替换成指定的HTML或DOM元素。参数content String, Element, jQuery, Function用于将匹配元素替换掉的内容。如果这里传递一个函数进来的话,函数返回值必须是HTML字符串。fn Functi...原创 2018-12-30 11:58:11 · 643 阅读 · 0 评论 -
深入学习jquery源码之基本类型与引用类型
深入学习jquery源码之基本类型与引用类型基本类型基本的数据类型有:undefined,boolean,number,string,null.基本类型的访问是按值访问的,就是说你可以操作保存在变量中的实际的值。基本类型的值是不可变得:var name = 'jozo';name.toUpperCase(); // 输出 'JOZO'console.log(name); // ...原创 2018-12-30 11:52:50 · 273 阅读 · 0 评论 -
深入学习jquery源码之插件机制(一)
深入学习jquery源码之插件机制jQuery最着名的一个方面是其广泛的插件生态系统。从表格排序到表单验证再到自动完成 - 如果需要它,很可能有人为它编写了一个插件。jQuery插件的质量差异很大。许多插件都经过了广泛的测试和维护良好,但其他插件被匆忙创建然后被忽略。不止一些人未能遵循最佳做法。一些插件,主要是jQuery UI,由jQuery团队维护。这些插件的质量与jQuery本身一样...原创 2018-12-22 14:02:56 · 431 阅读 · 0 评论 -
深入学习jquery源码之trigger()与triggerHandler()
深入学习jquery源码之trigger()与triggerHandler()trigger(type,[data])概述:在每一个匹配的元素上触发某类事件。这个函数也会导致浏览器同名的默认行为的执行。比如,如果用trigger()触发一个'submit',则同样会导致浏览器提交表单。如果要阻止这种默认行为,应返回false。你也可以触发由bind()注册的自定义事件而不限于浏...原创 2018-12-22 13:09:36 · 547 阅读 · 0 评论 -
深入学习jquery源码之map()
概述将一组元素转换成其他数组(不论是否是元素数组)你可以用这个函数来建立一个列表,不论是值、属性还是CSS样式,或者其他特别形式。这都可以用'$.map()'来方便的建立。参数callback,给每个元素执行的函数把form中的每个input元素的值建立一个列表。<p><b>Values: </b></p><form...原创 2018-12-22 08:41:35 · 266 阅读 · 0 评论 -
深入学习jquery源码之each()
$.each()遍历一个数组或对象,可以是DOM、json等格式,等价于for循环返回值:jQuery.each(callback) 参数:对于每个匹配的元素所要执行的函数概述:以每一个匹配的元素作为上下文来执行一个函数。意味着,每次执行传递进来的函数时,函数中的this关键字都指向一个不同的DOM元素(每次都是一个不同的匹配元素)。而且,在每次执行函数时,都会给函数传递一...原创 2018-12-22 08:21:32 · 356 阅读 · 0 评论 -
深入学习jquery源码之arguments和callee
深入学习jquery源码之argumentsjs 中的函数其实是对象,函数名是对 Function 对象的引用,arguments这个对象不能显式创建,arguments对象只有函数开始时才可用。每创建一个函数,该函数就会隐式创建一个arguments对象,他包含有实际传入参数的信息。length 检测实际传入参数的个数callee 对本身的调用访问传入参数的具体的值。([...原创 2018-12-27 20:32:00 · 338 阅读 · 0 评论 -
深入学习jquery源码之addClass()和toggleClass()与hasClass()
深入学习jquery源码之addClass()和toggleClass()与hasClass()addClass(class|fn)概述为每个匹配的元素添加指定的类名。参数class String一个或多个要添加到元素中的CSS类名,请用空格分开function(index, class) Function此函数必须返回一个或多个空格分隔的class名。接受两个参数...原创 2018-12-29 06:21:58 · 429 阅读 · 0 评论 -
深入学习jquery源码之prop()与removeProp()
深入学习jquery源码之prop()与removeProp()prop(name|properties|key,value|fn)概述获取在匹配的元素集中的第一个元素的属性值。随着一些内置属性的DOM元素或window对象,如果试图将删除该属性,浏览器可能会产生错误。jQuery第一次分配undefined值的属性,而忽略了浏览器生成的任何错误参数name String...原创 2018-12-29 06:14:11 · 336 阅读 · 0 评论 -
深入学习jquery源码之attr()与removeAttr()
深入学习jquery源码之attr()与removeAttr()attr(name|properties|key,value|fn)概述设置或返回被选元素的属性值。参数name String属性名称properties Map作为属性的“名/值对”对象key,value String,Object属性名称,属性值key,function(index, a...原创 2018-12-29 06:11:18 · 479 阅读 · 0 评论 -
深入学习jquery源码之Deferred对象与holdReady()
深入学习jquery源码之Deferred对象与holdReady()jQuery的Deferred对象也有resolve、reject、then方法,还有done、fail、always......方法。jQuery就是用这个Deferred对象来注册异步操作的回调函数,修改并传递异步操作的状态。<script> var defer = $.Deferred();...原创 2019-08-28 10:16:28 · 325 阅读 · 0 评论 -
深入学习jquery源码之is()与not()
深入学习jquery源码之is()与not()is(expr|obj|ele|fn)概述根据选择器、DOM元素或 jQuery 对象来检测匹配元素集合,如果其中至少有一个元素符合这个给定的表达式就返回true。如果没有元素符合,或者表达式无效,都返回'false'。 '''注意:'''在jQuery 1.3中才对所有表达式提供了支持。在先前版本中,如果提供了复杂的表达式,比如层级选...原创 2018-12-29 06:07:01 · 643 阅读 · 0 评论 -
深入学习jquery源码之jQuery的选择器引擎Sizzle(一)
深入学习jquery源码之jQuery的选择器引擎SizzleSizzle是一个纯javascript CSS选择器引擎。jquery1.3开始使用sizzle,Sizzle一反传统采取了相反的Right To Left的查询匹配方式,效率提高.Sizzle是jQuery作者John Resig新写的DOM选择器引擎,速度号称业界第一.Sizzle完全独立于jQuery,若不想用jQuery,...原创 2019-08-28 10:16:46 · 2567 阅读 · 0 评论 -
深入学习jquery源码之filter()与find()
深入学习jquery源码之filter()与find()filter(expr|obj|ele|fn)概述筛选出与指定表达式匹配的元素集合。这个方法用于缩小匹配的范围。用逗号分隔多个表达式参数expr String字符串值,包含供匹配当前元素集合的选择器表达式。jQuery object object现有的jQuery对象,以匹配当前的元素。element ...原创 2018-12-29 04:58:04 · 495 阅读 · 0 评论