摘要:这一课,我们将讲解val方法,以及对value属性的兼容性处理,jQuery中通过valHooks对象来处理。首先,我们先来看下val方法的使用:$("#input1").val() //获取input元素的value属性值$("#input1").val("hello") //设置inpu...
阅读全文
摘要:这一课,我们将继续讲解jQuery对元素属性操作的方法。首先,我们先看一下这几个方法是如何使用的:$("#div1").addClass("box1 box2"); //给元素div的class属性添加box1和box2$("#div1").removeClass("box1"); //删除...
阅读全文
摘要:我们先来看一下jQuery中有多少个方法是用来操作元素属性的。首先,看一下实例方法:然后,看下静态方法(工具方法):静态方法是内部使用的,我们外面使用的很少,实例方法才是对外的。接下来,我们来看下一些方法是如何使用的?$("#div1").attr("title","hello") ,设置属性,两个...
阅读全文
摘要:我们先来看一下jQuery中有关队列操作的方法集:从上图可以看出,既有静态方法,又有实例方法。queue方法,相当于数组中的push操作。dequeue相当于数组的shift操作。举个例子:function aaa(){ alert(1);}function bbb(){ alert(2);}$...
阅读全文
摘要:上一课主要讲了jQuery中的缓存机制Data构造方法的源码解析,这一课主要讲jQuery是如何利用Data对象实现有关缓存机制的静态方法和实例方法的。我们接下来,来看这几个静态方法和实例方法的源码解析:data_user = new Data(); //对外使用的数据缓存对象data_priv ...
阅读全文
摘要:jQuery中有三种添加数据的方法,$().attr(),$().prop(),$().data()。但是前面两种是用来在元素上添加属性值的,只适合少量的数据,比如:title,class,name等。对于json这种数据量大的,就适合用data方法来添加,而data方法就是jQuery缓存机制最重...
阅读全文
摘要:jQuery.support是用功能检测的方法来检测浏览器是否支持某些功能。针对jQuery内部使用。我们先来看一些源码:jQuery.support = (function( support ) { ...... return support;})( {} );jQuery.support其...
阅读全文
摘要:我们先来看when方法是如何使用的:var cb = $.when(); //when方法也是返回一个延迟对象,源码是return deferred.promise();返回的延迟对象不能修改状态$.Deferred()也是返回一个延迟对象,那么它们的区别是什么呢?$.Deferred()只能针对...
阅读全文
摘要:请接着上一课继续看。$.Deferred()方法中,有两个对象,一个是deferred对象,一个是promise对象。promise对象有以下几个方法:state,always,then,promise,pipe,done,fail,progress。deferred对象除了有promise对象的所...
阅读全文
摘要:请先看上一课的回调对象。Deferred是通过extend添加到jQuery中的工具方法。如下所示:jQuery.extend({ Deferred: function( func ) { }, when: function( subordinate /* , ..., subordinat...
阅读全文
摘要:我们首先来讲下Callbacks是如何使用的:第一个例子function a(){}function b(){}var cb = $.Callbacks();cb.add(a);cb.add(b);cb.fire(); //就会先执行a方法,再执行b方法上面大概的意思是:add方法,就是把方法添...
阅读全文
摘要:jQuery的工具方法,其实就是静态方法,源码里面就是通过extend方法,把这些工具方法添加给jQuery构造函数的。jQuery.extend({ ...... guid: 1, //唯一标识符,跟事件有关。举个例子:function show(){alert(this);}, $(...
阅读全文
摘要:jQuery的工具方法,其实就是静态方法,源码里面就是通过extend方法,把这些工具方法添加给jQuery构造函数的。jQuery.extend({ ...... each: function( obj, callback, args ) { //$.each(arr , funct...
阅读全文
摘要:jQuery的工具方法,其实就是静态方法,源码里面就是通过extend方法,把这些工具方法添加给jQuery构造函数的。jQuery.extend({ ...... type: function( obj ) { //$.type(),判断类型 if ( obj == null ...
阅读全文
摘要:jQuery的工具方法,其实就是静态方法,源码里面就是通过extend方法,把这些工具方法添加给jQuery构造函数的。jQuery.extend({ //当只有一个对象时,就把这个对象中的属性和方法扩展到this对象中,这里的this指向jQuery expando: "jQuery" +...
阅读全文
摘要:jQuery中要扩展方法或者属性都是通过extend方法实现的。所谓的jQuery插件也是通过extend方法实现的。jQuery.extend扩展的是工具方法,也就是静态方法。jQuery.fn.extend扩展的是实例方法。当只传入一个对象的时候,里面的方法和属性是扩展到this上的。比如:$....
阅读全文
摘要:上一篇主要讲解了jQuery原型中最重要的方法init。接下来再讲一些比较常用的原型方法和属性core_slice = [].slice,jQuery.fn = jQuery.prototype = { toArray: function(){ //把jQuery对象转换成原生元素的...
阅读全文
摘要:先来了解几个jQuery方法:$("li") -> this -> jQuery对象 -> { 0 : "li", 1 : "li", 2 : "li", length : 3 }$("aaa") 的效果跟 $("")的效果是一样的。然后来看一下init方法,也就是新建jQuery...
阅读全文
摘要:本系列是针对jquery2.0.3版本进行的讲解。此版本不支持IE8及以下版本。(function(){ (21, 94) 定义了一些变量和函数, jQuery = function(){}; (96,283) 给jQuery对象添加一些属性和方法(实例方法,通过$("div")这...
阅读全文