自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (26)
  • 收藏
  • 关注

原创 js中的懒加载函数

测试代码1:function createXHR(){ if(typeof XMLHttpRequest!='undfined') { return new XMLHttpRequest(); }else if(typeof ActiveXObject!='undefined') { //第一次执行的时候不是string,那么就会执行if里面的代码

2015-10-29 14:25:15 2140

原创 jQuery源码分析之parseJSON方法

源码如下:var rvalidtokens = /(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;jQuery.parseJSON1 = function( data ) {

2015-10-28 16:27:48 3091 2

原创 jQuery源码分析之parseHTML方法

请首先阅读buildFrament以及正则表达式相关源码源码如下://将字符串转化为节点数组!通过log可以知道var rsingleTag = (/^(?:|)$/);jQuery.parseHTML1 = function( data, context, keepScripts ) { if ( !data || typeof data !== "string" ) { re

2015-10-28 15:14:51 3548

原创 jQuery源码分析之ready方法

首先阅读Deferred相关知识:测试1;$(document).ready(function(){ alert("ready");});//这种方式调用以后,还要通过triggerHander来触发文档的ready事件!所以这个例子会执行两次ready!//触发以后就要移除这个事件!因为ready事件不要多次调用!//而且该函数中的this指向的是HTMLDocument对象,

2015-10-28 12:37:18 1599

原创 jQuery源码分析之init方法

jQuery函数源码如下: jQuery = function( selector, context ) { // The jQuery object is actually just the init constructor 'enhanced' // Need init if jQuery is called (just allow error to be thrown if no

2015-10-28 10:33:17 2386

原创 javascript中的函数绑定

首先我们来看看jQuery中的proxy函数如何实现函数绑定的: proxy: function( fn, context ) { var args, proxy, tmp; //这说明:在直接调用proxy得到新的函数的时候就可以传入多余的参数,从第三个参数以后会被当作额外的参数来处理 args = slice.call( arguments, 2 ); proxy =

2015-10-27 14:11:45 690

原创 jQuery源码分析之noConflict方法

代码1://因为下面函数的返回值是jQuery对象,以后用x代替$了!只是名字不同而已!var x=$.noConflict();var $=123;//到这里$被修改为123,$被写到这里noConflict里面的代码是没有意义的!x(function() { alert($);//打印123})//上面把var $=123写在那个位置下面两行代码没有意义的!那么什么时候有意义

2015-10-25 14:02:05 860

原创 深入理解jQuery.css和jQuery.style源码

测试代码1:   JS部分:$(function(){//在IE中要用驼峰写法!打印10%//alert(document.getElementById("content").currentStyle["marginRight"]);//css方法已经把100%转化为绝对值了66px//alert($("#content").css("margin-right"));//打印6

2015-10-23 11:12:31 1602

原创 jQuery源码分析之globalEval函数

源码分析:globalEval: function( data ) { if ( data && jQuery.trim( data ) ) { // We use execScript on Internet Explorer // We use an anonymous function so that context is window // rather than

2015-10-22 12:56:02 1128

原创 JS中的克隆与数据属性和访问器属性

一、数据属性和访问器属性:(1)在ECMAScript5中用Object.keys可以获取到对象的所有的可枚举属性的字符串数组,如果用于原型,那么就获取原型上面的所有的属性,如果用于实例,那么就返回实例属性。如果你想得到所有的实例属性,不管他是否可以枚举就可以用Object.getOwnPropertyNames方法,这个方法连constructor也会迭代出来!(2)Object.key

2015-10-21 12:15:09 1579

原创 js中那些方法不改变原来的数组对象

一、map方法function fuzzyPlural(single) { var result = single.replace(/o/g, 'e'); //replace也不会修改原来数组的值,这里打印[foot,goose,moose,kangaroo] //alert(single);//下面为新的数组添加了一个元素,但是我们看到在map的时候没有对添加的元素进行处理,所

2015-10-21 09:59:07 14553

原创 JS中exec,match,replace,test方法对比

正则表达式中各种方法的比较:       方法名称RegExp的exec方法String对象的match方法RegExp对象的test方法String的replace方法RegExp的exec方法(1)第0个元素是与表达式匹配的文本(2)第1个元素是与子表达式匹配的文本(3)很显然返回值是数组(4)返回数组有length,inde

2015-10-19 09:33:38 5538 1

原创 jQuery源码分析之offset,position,offsetParent方法以及源码中常见的cssHooks,swap代码

offset方法源码分析://获取当前元素相对于文档的偏移量 offset: function( options ) { //如果有参数表示设置调用对象的相应属性! if ( arguments.length ) { return options === undefined ? this : this.each(function( i ) { jQue

2015-10-18 17:36:58 2788

原创 jQuery源码分析之css方法

提前阅读:阅读css方法源码分析: css: function( name, value ) { return access( this, function( elem, name, value ) { var styles, len, map = {}, i = 0; //如果传入的第二个参数是数组对象,那么表示获取所有的属性的集合

2015-10-18 14:27:52 1833

原创 jQuery源码分析之width,height,innerWidth,innerHieght,outerWidth,outerHeight函数

11

2015-10-17 20:53:17 2386

原创 jQuery源码分析之jQuery.event.special八问

参见博客:点击打开链接jQuery.event.special源码如下:special: { load: { // Prevent triggered image.load events from bubbling to window.load //防止img元素的load事件冒泡到window的onload事件上面 noBubble: true }, foc

2015-10-17 16:45:28 2658

原创 jQuery源码分析之jQuery.event.fix方法五问

源码如下: var rformElems = /^(?:input|select|textarea)$/i, rkeyEvent = /^key/, rmouseEvent = /^(?:mouse|pointer|contextmenu)|click/, rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, rtypenam

2015-10-17 16:28:46 1309 1

原创 jQuery源码分析之blur focus focusin focusout load resize scroll unload click dblclick等方法

blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu源

2015-10-17 14:30:55 1760 1

原创 jQuery源码分析之从off方法看unbind,undelegate方法

请提前阅读:点击打开链接unbind方法源码:unbind: function( types, fn ) { return this.off( types, null, fn ); }undelegate方法源码:undelegate: function( selector, types, fn ) { // ( namespace ) or ( selector, type

2015-10-17 13:52:29 2002

原创 jQuery源码分析之从on方法看bind,delegate,live,one方法一问

请提前阅读on方法源码分析:点击打开链接bind方法源码: bind: function( types, data, fn ) { return this.on( types, null, data, fn ); }delegate方法:delegate: function( selector, types, data, fn ) { return this.on( type

2015-10-17 12:31:35 1350

原创 jQuery源码分析之jQuery.event.remove方法

方法的源码分析如下:remove: function( elem, types, handler, selector, mappedTypes ) { var j, handleObj, tmp, origCount, t, events, special, handlers, type, namespaces, origType, //获取该元素的jQuery内部

2015-10-17 10:44:51 1122 1

原创 jQuery源码分析之jQuery.event.trigger及jQuery.Event十问

首先我们给出一个例子:HTML部分: JS部分:$("#n1").on("click",function(){alert("n1 ")});$("#n2").on("click",function(){alert("n2 ")});$("#n3")[0].onclick=function(){ alert("click1 invoked!"); retur

2015-10-15 15:59:29 3423 1

原创 jQuery源码分析之jQuery.event.add和jQuery.event.dispatch十一问

dispatch方法源码:var rnotwhite = (/\S+/g);var rtypenamespace = /^([^.]*)(?:\.(.+)|)$/;var strundefined=undefined;var slice=[].slice;//当点击对象时候就会调用下面的eventHandle对象,传入的参数是Event对象!jQuery.event.dispatc

2015-10-14 17:00:54 3325

原创 jQuery源码分析之jQuery.even.handlers八问

首先给出测试用例:HTML部分: 给出JS部分代码:var handlers1=function( event, handlers ) { var sel, handleObj, matches, i, handlerQueue = [], //获取这个数组的delegateCount表示delegate了几个对象 delegateC

2015-10-14 15:20:43 932

原创 jQuery源码分析之buildFragment方法和clone方法

buildFragment方法源码:var rxhtmlTag = /]*)\/>/gi;var strundefined=undefined;var rtagName = /<([\w:]+)/;var rtbody = /<tbody/i;var rhtml = /<|&#?\w+;/;var rscriptType = /^$|\/(?:java|ecma)script/i;

2015-10-13 18:38:17 1836

原创 jQuery源码分析之prop和removeProp方法

DOM对象实例方法prop源码: prop: function( name, value ) { return access( this, jQuery.prop, name, value, arguments.length > 1 ); }如果传入一个参数,那么这时候value是undefined,第五个参数是false,为了方便我们还是附上access源码:如果是获取属性(val

2015-10-13 15:10:44 1638

原创 jQuery源码分析之removeAttr方法和attr方法

jQuery.removeAttr函数源码测试:var rnotwhite = (/\S+/g); var propFix ={ "for": "htmlFor", "class": "className" }; attrHandle = jQuery.expr.attrHandle; ruseDefault = /^(?:checked|selected)$/i; get

2015-10-13 14:05:21 2800

转载 jQuery support 源码解读

jquery support主要是检测浏览器兼容性,支持力度的方法,用于展示不同浏览器各自特性和bug的属性集合。作为一个静态成员,提供给jquery内部函数,告诉他们某些功能是否能用。避免了以往通过检测浏览器版本做修改。  可以直接调用jQuery.support来检测某些功能,通过查看其源代码我们可以更深入的了解各个浏览器之间的区别。特别是针对IE,还有webkit的bug,都能让我们受益

2015-10-13 10:22:55 674 1

原创 jQuery源码分析之wrap,wrapInner,wrapAll,unwrap方法

首先我们回忆一下each实例方法的用法:$(document).ready(function(){ $("button").click(function(){ $("li").each(function(i,elem){ //首先这个each实例函数中,第一个参数是调用对象下标,第二个参数是调用对象DOM元素 //this指的是调用对象的DOM元素!

2015-10-12 13:51:48 1271

原创 jQuery源码分析之remove和detach方法的区别

请提前阅读:点击打开链接detach源码分析:detach: function( selector ) { return this.remove( selector, true ); }可见detach内部调用的是remove函数,同时把selector传入remove方法,但是第二个参数是true,所以remove方法中的keepData是true表示不会调用里面的cleanDa

2015-10-12 10:56:49 1113

原创 jQuery源码分析之empty和remove方法四问

测试代码1:把id为first下面所有的子元素移除 $(document).ready(function(){ var ps=document.getElementById("first"); while(ps.firstChild) { ps.removeChild(ps.

2015-10-12 09:59:24 1865 1

原创 jQuery源码分析之appendTo,prependTo,insertBefore,insertAfter,replaceWith函数

源码如下:请提前阅读阅读var deletedIds = [];var push = deletedIds.push;jQuery.each({ appendTo: "append", prependTo: "prepend", insertBefore: "before", insertAfter: "after", replaceAll: "replaceWith"}, f

2015-10-12 09:19:13 1196

原创 domManip之prepend,append,before,after,replaceWith方法

prepend源码解析(domManip参见博客打开):CodePlayer    var $n1 = $("#n1");//将一个strong标记追加到n1内部的起始位置$n1.prepend( '追加内容' );alert($("#n1")[0].firstChild.id);//打印test,说明prepend是在第一个子元素前面插入的prepend: funct

2015-10-11 16:09:30 849

原创 jQuery源码分析之jQuery中常用正则表达式分析

jQuery源码中正则表达式分析

2015-10-11 15:50:13 2322

原创 jQuery源码测试笔记之domManip函数

代码1:domManip调用的其它函数和正则表达式:var concat=[].concat;var strundefined=undefined;var rscriptTypeMasked = /^true\/(.*)/;var rscriptType = /^$|\/(?:java|ecma)script/i;var rcleanScript = /^\s*\s*$/g;//jQue

2015-10-11 13:10:00 773 1

原创 jQuery的access方法测试笔记

测试代码1值access与普通对象的关系:1111111111var access1 = jQuery.access1 = function( elems, fn, key, value, chainable, emptyGet, raw ) { var i = 0, length = elems.length, //第三个参数是可选的,通过它走不同的逻辑 bulk =

2015-10-10 18:57:03 1999 2

原创 jQuery的Deferred对象测试笔记以及源码分析

官方地址见:点击打开链接 测试代码1:(deferred.always)always参数可以是一个function对象也可以是一个function数组,当Deferred对象resolve或者reject那么该函数会被调用。因为deferred.always()方法返回一个Deferred对象,所以其它的Deferred的方法可以继续调用,也包括继续调用always方法,当Deferred

2015-10-09 14:27:52 1646 1

原创 jQuery.Callbacks的测试代码总结

//jQuery.Callbacks函数 //调用方式:jQuery.Callbacks("once memory").add //详见:点击打开链接 /*callbacks里面添加了两次f函数,但是fire()时候只会调用一次,也就是由于两次添加的函数相同,那么会检测到重复的调用。同时jQuery.Callbacks1("unique")调用时候会把options["unique

2015-10-09 10:10:07 816 1

原创 jQuery.when()方法测试笔记及源码分析

/*      测试代码1:(如果传入when的不是Deferred也不是Promise对象,那么马上执行done方法,done方法会被传入初始参数也就是传入when方法的参数同时fail方法永远不会被执行,因为当传入的不是Deferred也不是Promise时候,会被当作resolved所以不会是rejected)$.when( { testing: 123 } ).done

2015-10-09 09:15:49 2033 1

原创 jQuery源码分析之closest,has,addBack,addSelf,add方法

closest源码分析:       //调用方式:jQueryObject.closest( expr [, context ] )closest: function( selectors, context ) {var cur,i = 0,//选择器选择对象的个数l = this.length,//保存结果集合matched = [],//var rneed

2015-10-07 19:42:11 1385

在线评论数据集 论文全文 字段解释

太平洋电脑网排名前1000的手机的评论信息,包括评论内容信息,如评论效价,评论长度等。评论者粉丝数,关注数,以及评论者在论坛的其他方面的贡献。其中涉及的字段超过20个。可以用于文本挖掘,也可以用于实证分析。

2017-04-12

touch.js分析

touch.js分析

2016-11-11

web前端工程

ajax后退,HTML5本地存储,PS基本技能,Reptile,sealJS,XSS,Layload,跨域 等前端基本知识

2016-09-22

为retina选择合适的图片

为retina屏幕选择合适的背景图片和图片,里面LESS相关用法还是很值得学习的

2016-08-23

从骰子角度理解perspective

从骰子的角度来分析perspective,perspective-origin,backface-visibility等3d属性

2016-07-10

loading效果

页面正在加载中。。。。。

2016-07-09

h5页面适配

适合h5页面最终适配方案

2016-07-09

适应retina

使用background-size来适应retina屏幕

2016-07-05

Flip动画准则

动画设计的FLIP准则

2016-06-28

减少布局抖动

使用一个公共的库fastdom来减少动画中的布局抖动问题

2016-06-26

strictdom思路

在合适的阶段执行不同的dom操作进而减少布局抖动

2016-06-25

学习angularjs资源

深入理解ng中核心问题

2016-05-10

gulp学习笔记

涉及常见的gulp插件的使用并附加详细的说明

2016-04-09

Express-Session源码分析

express-session库源码分析

2016-04-07

ipaddr学习

如果要学习Express中的trust proxy选项必须要看的知识

2016-04-05

各种网站特效的实现

弹出层效果,二维码,放大镜效果,回到顶部特效,轮播图特效,瀑布流特效,手风琴效果,选项卡效果等各种特效

2016-03-27

模型库管理系统

java,spring,struts,hibernate,jsp编写的模型库系统,可以完成模型的增加,删除,修改,查询。

2015-12-20

CMD规范之seajs

seajs常见配置解析和常见插件的使用。sea.js,seajs-css.js,seajs-debug.js,seajs-preload.js,seajs-log.js等

2015-12-06

HTML5离线存储

我通过Application Cache+localStorage+web sql构建了一个离线应用,同时我也把逻辑按照Application cache+localStorage+indexedDB写了一次,有兴趣的同学可以下载,同时代码逻辑按照MVC组织。可以让大家很快理解HTML5离线存储技术

2015-11-17

食人魔过河问题的文件

食人魔过河问题的jar,支持深度优先,广度优先,启发式算法

2015-09-13

artDialog插件和API详解

artDialog插件的使用和相关API详解

2015-08-25

xheditor+requireJS+loadmask

集成xheditor,loadmask和requireJS完成的通过JQuery异步提交数据到服务器的代码

2015-08-05

javascript编程宝典第二版源码

包括常见的网页特效,滚动的公告栏,树形目录,跟随鼠标的图片和文字,指定路径运动的图片,固定位置的广告,飘落的雪花等常见的网页效果。里面的源码可以直接用,希望大家喜欢!

2015-07-06

KindSlideShow

kindSlideShow用于图片的轮换显示,而且支持自定义的一系列参数

2015-07-05

网络爬虫代码

该爬虫可以爬取国内某大型网站的评论,不仅可以作为学术研究工具,也可以作为爬虫学习的基础。因为编写该爬虫付出的时间较长,拿出来分享,但是拒绝各位网友再次上传到其它的网络平台,请尊重原创!(该工具涉及的所有jar包已经封装到lib目录下,可以直接运行,同时结合Mysql数据库完成数据抓取工作)

2015-07-05

空空如也

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

TA关注的人

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