WEB开发网
开发学院网页设计JavaScript Jquery源码分析---FX分析 阅读

Jquery源码分析---FX分析

 2010-09-14 13:39:01 来源:WEB开发网   
核心提示: Animate通过传入的参数对于jquery对象中的每个元素的每个指示的属性都进行时间上渐变的改变,下面就分析其中的代码,Jquery源码分析---FX分析(4),jQuery.speed在①是就通过jquery.speed来进行参数的统一整理,// 主要用于辅助性的工作speed: fu

Animate通过传入的参数对于jquery对象中的每个元素的每个指示的属性都进行时间上渐变的改变。下面就分析其中的代码。

jQuery.speed

在①是就通过jquery.speed来进行参数的统一整理。

// 主要用于辅助性的工作
speed: function(speed, easing, fn) {
  var opt = speed && speed.constructor == Object ? speed : { 
// coplete是至多三个参数的最后一个。看看是否传入动画完成回调的函数
  complete: fn ||!fn && easing ||jQuery.isFunction( speed ) && speed,
duration: speed,// 持继的时间,动画运行的时间。
//找到动画中属性随时间渐变的的算法。
easing:fn&&easing || easing && easing.constructor != Function && easing
  };
//计算出正确的duration,它支持fast,slow这样已经定义的常量
opt.duration = (opt.duration &&
(opt.duration.constructor == Number?
opt.duration :
jQuery.fx.speeds[opt.duration]))||jQuery.fx.speeds._default;
    // Queueing
    opt.old = opt.complete;
//这里是把complete形成了包裹,看看参数中是否指定队列操作,
//如果先出列,再执行complete
opt.complete = function(){
//可能通过参数指定queue,this指向是当前的dom元素。
  if ( opt.queue !== false ) jQuery(this).dequeue();//出queue
  if (jQuery.isFunction( opt.old )) opt.old.call( this );
  };
  
return opt;
},

jquery.speed是对参数进行管理的操作函数。它首先看看speed是不是紧缩型的参数如{ complete:xx, easing:xx, duration:xx}。如果不是,就根据传入的参数进行判断,组成紧缩型的对象参数。

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:Jquery 源码 分析

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接