jquery191源码分析系列(十五)动画处理之外篇_jquery

jquery191源码分析系列(十五)动画处理之外篇_jquery

ID:30778327

大小:73.50 KB

页数:6页

时间:2019-01-03

jquery191源码分析系列(十五)动画处理之外篇_jquery_第1页
jquery191源码分析系列(十五)动画处理之外篇_jquery_第2页
jquery191源码分析系列(十五)动画处理之外篇_jquery_第3页
jquery191源码分析系列(十五)动画处理之外篇_jquery_第4页
jquery191源码分析系列(十五)动画处理之外篇_jquery_第5页
资源描述:

《jquery191源码分析系列(十五)动画处理之外篇_jquery》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Jqueryl.9.1源码分析系列(十五)动画处理之外篇a.动画兼容Tween.propHooksTween,propllooks提供特殊情况卜•设置、获取css特征值的方法,结构如卜Tween.propHooks={default:{get:function()set:function(){•••}},scrollTop:{set:function(){•••}}scrollLeft:{set:function()}}}Tween.propHooks.scrollTop和Tween.propHooks.scrollLeft两个主耍是在ie8

2、离线状态下会岀现混乱而把css特征值保存到节点上set:function(tween){if(tween,elem.nodeType&&tween.elem.parentNode){twocn.clcm[twocn.prop]二twocn.now;Tween.propHooks._default的get方法会尝试直接从节点上取得css的tween,prop特征值,如果取不到则使用jQuery.css()方式來获取。该方法处理中,简单的值如“10px”会被解析为浮点数;复朵的值,如“旋转(lrad)"返回原样。并对返回结果再做处理:空字符串,n

3、ull,undefined和"auto"都转化为0;其他情况不变。get:function(tween){varresult;if(tween.elem[tween,prop]!=null&&(!tween,elem・style

4、

5、tween,elem・style[tween,prop]二二null)){returntween.elem[tween.prop];//传递一个空字符串作为第三个参数的.css会自动尝试parseFloat,〃并返回到一个字符串,如果解析失败的话。//所以,简单的值,如“10px”会被被解析为浮点数。复杂的值,如“

6、旋转(lrad)”返回原样。result=jQuery.css(tween,elem,tween,prop,"");//空字符串,null,undefined和"auto"都转化为0return!result

7、

8、result二二二"rnito"?0:result;Tween.propHooks.default的set方法先会尝试jQuery.fx.step[tween,prop]來设置向下兼容;否则会使用jQuery.style來设置css特征值;最极端情况则会将特征值一直接保存在节点上set:function(twecm){//使用step

9、hook向下兼容一使用cssHooki\果他存在一使用.style如果可用的话〃使用直接的特征值如果可用可用的话if(jQuery.fx.step[tween,prop]){jQuery.fx.stcp[twocn.prop](twocn);}elseif(tween・elem.style&&(tween,elem.styletjQuery.cssProps[tween,prop]]!=null

10、jQuery.cssHooksttween,prop])){jQuery.style(tween.elem,tween.prop,tween.no

11、w+tween.unit);}else{twocn.clcm[twocn.prop]=twocn.now;}}b.动画专用对象jQuery.fxjQuery.fx封装了一些用來执行动画动作的函数,结构如下jQuery.fx={tick=function(){…},〃每个时间点都会执行的函数外壳,会取出jQuery.timers中的函数执行timer二function(timer){...},//执行参数中的函数并启动计时interval=13,//计时步长start=function(){...},//启动计时stop=function(){

12、...},//停止计时speeds={slow:600,fast:200,default:400},//动画速度(完整动画执行吋间)step={}//向下兼容〈1・8扩展点详细的源码分析如下jQucry.fx二Twocn.prototype・init;//每个时间点都会执行的函数外壳,会取出jQuery.timers屮的函数执行jQuery.fx.tick=function(){vartimer,timers=jQuery.timers,i=0;fxNow=jQuery.now();for(;i

13、r二timers[i];//Checksthetimerhasnotalreadybeenremovedif(!timer()&&timcrs[i]===timer

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。