自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 资源 (11)
  • 收藏
  • 关注

原创 jQuery缓存探究

如果与java语言世界对比的话,jQuery Data模块和jQuery Queue模块类似java的集合框架。jQuery Data模块的功能简单来说就是"在某个元素"上对缓存数据"做增删改查的CRUD操作"。"某个元素"可能是原生的dom对象,也可能是js内核对象,jQuery Data模块区别对待它们。按照jQuery通用编程风格,一般对数据的写和读是设计到同一个方法的,更新也属于写操作类型

2016-08-07 10:01:45 2787

原创 jQuery选择器探究:Sizzle构造函数

什么情况下jQuery会调用传统的通用的Sizzle逻辑呢?前几篇分析过,ID选择器会在jQuery构造函数中直接被处理,TAG选择器和CLASS选择器会在新式浏览器中(支持并实现document.querySelectorAll强大功能)直接被处理,甚至只要遵循CSS规范的选择器都会被新式浏览器直接处理,那么剩下的场景将交给传统Sizzle引擎处理了:不支持document.querySelec

2016-08-03 14:06:33 796

原创 jQuery选择器探究:TAG选择器和CLASS选择器

(jquery1.6.1版本)假设有一个html文档中存在多个标签元素,那么当我们敲入$("h1")后在jQuery内部将会执行怎样的逻辑呢?分析jQuery构造函数我们同样定位到find( selector )方法,这个方法是jQuery的实例方法,代码如下:(5137行) find: function( selector ) { var self = this, i, l

2016-07-31 18:16:22 3331

原创 jQuery选择器探究:ID选择器

ID选择器算是jQuery选择器中最简单的一种了,这里跟踪并梳理jQuery id选择器的逻辑。所有选择器的调用语法都是从jQuery构造函数开始的,id选择器的调用语法是:$("#x"),如果我们是jQuery的设计者,那么在jQuery构造函数中对id选择器的处理有两种思路:要么单独处理,要么与其他选择器一样处理,如果区别对待id选择器,只需要识别选择器/^#(\w)+$/即可,如

2016-07-31 16:04:22 2196

原创 jQuery选择器探究:正则表达式汇总

jQuery选择器正则表达式是jQuery选择器框架Sizzle的基础。Sizzle正则表达式集中在Expr对象的match对象属性中,这里定义的RE是基础的、按照功能分类的。另一个核心RE是变量chunker定义的。一 Expr对象的正则表达式 match: { ID: /#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/, CLASS: /\.((?:

2016-04-17 18:27:11 6138

原创 jQuery选择器探究:语法汇总

首先概略汇总一下jQuery常见选择器,大概分为这么几类:基本选择器、层次选择器、过滤选择器。基本选择器包含id/class/tag等,层次选择器包含祖孙、父子、兄弟、同级选择器四种,过滤选择器比较多样化,有根据当前元素在同级元素集合中的位置选择的,有根据相对父元素的子元素选择的,有根据属性选择的,也有根据内容选择的,还有表单元素等多种过滤选择器。一 基本选择器ID选择器 #id

2016-04-17 18:09:23 1127

原创 jQuery异步框架探究3:jQuery.when方法

(本篇文章针对jQuery1.6.1版本)经过前两篇文章对jQuery异步回调机制的详细分析,关于jQuery如何实现异步回调机制的原理已经非常清楚了--将"回调函数"与"击发动作"两个步骤分开,这样可以先把回调函数作为子弹预先存储到弹夹中,由指定对象在"特定条件"实现后再击发子弹。异步对象的done、fail、then、always方法都是存储回调函数的,异步对象的resolveWith、res

2016-03-27 14:03:32 2050

原创 jQuery异步框架探究2:jQuery.Deferred方法

最后总结一下,第一篇通过"手枪"模型详细解释了jQuery._Deferred函数的内部原理,本篇通过"未来单兵武器系统"模型详细解释jQuery.Deferred函数的内部原理,可以看到增强型异步对象本身并没有引入其他过多复杂的机制,只是通过增强或减弱普通异步对象的功能来达到设计的目的,因此重点还是jQuery._Deferred函数。另外增强型异步对象虽然解决了"增加更多的回调钩子应对不同场景下的回调逻辑"这个需求,但是jQuery整个异步机制还缺少最后一个环节--"什么时候由谁开枪",更通俗的说是怎么

2016-03-26 15:02:06 1263

原创 jQuery异步框架探究1:jQuery._Deferred方法

jQuery异步框架应用于jQuery数据缓存模块、jQuery ajax模块、jQuery事件绑定模块等多个模块,是jQuery的基础功能之一。实际上jQuery实现的异步回调机制可以看做java nio(不是aio)的近似,所以需要从更抽象层面的"异步回调"的视角分析解读该模块。这个部分与dom功能关系不大,是独立部分,可以看作是jQuery工具系列之一。与异步框架相关的方法定义于jQ

2016-03-25 15:02:54 1097 1

原创 jQuery action类型实例方法探究:Array转换

关于jQuery原型对象中的action类型实例方法,如果严格按照Spark对Action概念的定义来说,除了构造jQuery对象的Sizzle和变形jQuery对象的Transform,其余的包括到纯粹数组的转换、异步队列Deferred、数据缓存Data、队列queue、属性操作Attr、事件处理Event、DOM操作、CSS操作、动画FX、坐标操作等统统算作是Action领域,剩余其他的比如

2016-03-23 11:34:49 549

原创 jQuery transform类型实例方法探究

jQuery.prototype中定义了许多非常有趣的方法,同样对比Spark RDD的逻辑可以将其一部分划分为几个大的类型:transform类型及与之相关的方法集、action类型及与之相关的方法集,本篇将着重分析Transform类型的方法。这两大类方法是针对"已有选中原生客户端对象集合"的jQuery对象而言的,"怎样在文档对象中选中原生客户端对象集"可以看做是构造RDD的一大类方法,这个

2016-03-22 20:32:39 5838 1

原创 jQuery transform/action类型静态工具方法探究

研读了jQuery源码后,发现非常有趣的一个现象:一个前端单节点内的脚本语言编程框架与大数据领域内集群上的编译语言型编程框架从逻辑抽象层面上并没有差异,更通俗的说是与函数式编程的普遍思想没有差异--编程果然是殊途同归的。本篇博客参照Spark RDD的Transformations和Actions对jQuery静态工具方法做一个简单的总结。一 jQuery.each这里探究

2016-03-21 20:57:48 768

原创 Object.prototype.toString应用和原理探析

查阅各种资料,在javascript语言中为了准确判断对象的数据类型也是拼了,各种或土法或高大上法齐上阵也未必能得到预期的结果,这篇博客来做一个简单的总结。一 typeof运算符的使用和局限实际用例最能说明问题,测试之:console.info("typeof undefined : ", typeof undefined);console.info("typeof null

2016-03-19 18:19:17 1227

原创 Array.prototype.slice应用和原理探析

Array.prototype.slice应用和原理探析,以及在jQuery中对应的实现原理。

2016-03-18 14:09:06 5342

转载 git revert远程常见操作

如果本地仓库的变动已经push到远程仓库上去了,需要同时回滚本地仓库和远程仓库,那么就要用到这个命令了:git revert基本用法git revert [commitversion]详解1 commitversion与git reset中的commitversion含义一致,查询方法也一致。2 git revert与git reset的区别:(1) 如果你

2015-07-28 16:36:13 6118

原创 git reset本地常见操作

git reset命令用于将当前分支回退到指定的某个版本。基本用法git reset [--hard] commitversion详解该命令可以看做commit命令的取反操作,既然可以向前提交,当然也可以向后回滚。可以像事务一样回滚一次到上一次的位置,也可以回滚到指定的位置。这个位置由commitversion决定,每commit一次都会产生一个commitve

2015-07-21 16:17:55 8370

原创 git pull常见操作

git pull命令用于取回远程主机某个分支的更新与本地的指定分支合并。用法$ git pull :详解:1 取回origin主机的next分支,与本地的master分支合并,需要写成下面这样。$ git pull origin next:master2 如果省略本地分支名,则表示远程分支是与当前分支合并。$ git pull origin next上面命令表

2015-07-09 16:46:15 18173

原创 git push常见操作

git push命令用于将本地分支的更新推送到远程主机对应分支。基本用法git push :详解:该命令的用法一句话总结是--将本地仓库的"哪个分支"推送到"哪台主机"的"哪个分支",因此需要描述清楚四个元素中的三个元素。1 远程主机名有两种写法,一种是直接写完整的远程主机地址$ git push ssh://[email protected]/rt4ls.

2015-07-09 15:33:07 1062

原创 DOM4J解析大数据的方案

dom4j本身提供了两种解析xml的方式:dom解析和sax解析。关于dom解析和sax解析各自的优缺点这里不再多述,只强调的一点是由于越来越多的应用会遇到大数据场景,SAX解析方式刚好是解决此类场景的完美方案,因此“DOM4J解析大数据的方案”就是"如何利用SAX方式解析大数据的方案"(当然JAXP中的sax解析也是同样的方案),本文梳理总结下实际工作中使用DOM4J解析大容量XML文件的实现。

2013-12-23 18:46:53 5934 3

转载 jquery操作checkbox

1、checkbox list选择 http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">http://www.w3.org/1999/xhtml">                    $(function () {            // 全选            $("#btnCh

2013-04-23 10:45:42 630

原创 Struts2集成JSON的方案

目前的java web项目如果使用了Struts2框架,那么几乎没有不遇到使用json格式传输数据的场景,尤其是涉及到需要满足ajax异步请求需求的时候。struts2集成json很自由,可以有多种方法,这里记录一种个人认为比较简洁但也多样化的方案,参考了>一书和实际项目经验。原理需要自定义一种结果类型,该类型负责处理Action返回Json格式数据的场景,需要解决以下几个问题:一是能够尽

2012-03-04 13:30:13 2323

原创 jquery操作cookie

web开发过程中如果网站有一部分信息是存储在cookie中并与服务器交互的话,那么前台有时就会遇到需要对cookie中信息进行操作的情况,一个最典型的例子就是在前台判断用户是否登录过当前所访问的网站。可以用js原生的代码操作cookie,不过对于已经习惯在前台使用jquery的人员来说,最好能有一种直接扩展到jquery实例对象中的方法来统一操作风格,这里记录一个个人感觉还算简洁的方案。

2012-02-28 19:20:42 1121 1

原创 Java Map按键排序和按值排序

Map排序的方式有很多种,这里记录下自己总结的两种比较常用的方式:按键排序(sort by key), 按值排序(sort by value)。按键排序(sort by key)jdk内置的java.util包下的TreeMap既可满足此类需求,原理很简单,其重载的构造器之一有一个参数,该参数接受一个比较器,比较器定义比较规则,比较规则就是作用于TreeMap的键,据此

2011-12-25 16:31:27 99629 3

原创 jedis客户端对象的使用

最近初次尝试使用redis,java客户端采用的jedis,写了几个简单的类满足基本的服务器配置,以及客户端对象的使用等。客户端对象的创建package jediscache.common;import redis.clients.jedis.Jedis;import redis.clients.jedis.JedisPool;import redis.clients.jedis.

2011-10-06 17:59:11 4292 1

Spring-Reference_zh_CN.chm

Spring-Reference_zh_CN.chm中文版完整的参考资源

2013-04-23

js学习资料

几篇优秀的javascript学习资料,对js难点问题如prototype等做了深入浅出的分析

2013-04-23

xml parser

Dom4j解析xml技术,jdom解析xml技术的api

2013-04-23

freemarker中文教程

freemarker完整的中文教程,南磊编著。

2013-04-23

struts2教程

struts2的教程和struts in action书籍

2013-04-13

struts1.2资源整合

struts1.2源码.rar 核心源码 struts-1.2.4-lib Struts1.2API chm格式

2012-07-05

spring-framework-3.0.4.RELEASE-with-docs

包含两个压缩包:spring-framework-3.0.4.RELEASE-with-docs.zip和Spring-Reference_zh_CN.rar。 完整的3.0.4.RELEASE,dist目录下有所有jar包,docs目录下是javadoc-api(英文原版)和关于spring的规范,projects下则是源代码。 Spring-Reference_zh_CN.rar则来自于CSDN,一份中文版的指导。 出于共享的目的,本资源0分下载。

2012-03-10

c程序设计语言.pdf

c程序设计语言,最经典的c语言技术书籍

2012-03-06

servlet specification and api

最新的servlet3.0规范和api文档

2012-03-04

redis运行环境(UNIX,WINDOWS),对应的jedis jar包

UNIX下和WINDOWS下的运行环境,以及供开发使用的Jar包

2011-09-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除