位置: 编程技术 - 正文

Jquery1.9.1源码分析系列(十五)动画处理之外篇(jquery.min.js源代码)

编辑:rootadmin

推荐整理分享Jquery1.9.1源码分析系列(十五)动画处理之外篇(jquery.min.js源代码),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:jquery-3.3.1,jquery animate源码,jquery开源,jquery开源,jquery源码是什么水平,jquery源码实现原理,jquery源码实现原理,jquery源码分析,内容如对您有帮助,希望把文章链接给更多的朋友!

a.动画兼容Tween.propHooks

  Tween.propHooks提供特殊情况下设置、获取css特征值的方法,结构如下

  Tween.propHooks.scrollTop 和Tween.propHooks.scrollLeft两个主要是在ie8离线状态下会出现混乱而把css特征值保存到节点上

  Tween.propHooks._default的get方法会尝试直接从节点上取得css的tween.prop特征值,如果取不到则使用jQuery.css()方式来获取。该方法处理中,简单的值如“px”会被解析为浮点数;复杂的值,如“旋转(1rad)”返回原样。并对返回结果再做处理:空字符串, null, undefined 和 "auto"都转化为0;其他情况不变。

  Tween.propHooks._default的set方法先会尝试jQuery.fx.step[ tween.prop ]来设置向下兼容;否则会使用jQuery.style来设置css特征值;最极端情况则会将特征值直接保存在节点上

b. 动画专用对象jQuery.fx

  jQuery.fx封装了一些用来执行动画动作的函数,结构如下

  详细的源码分析如下

  变量jQuery.timers = [];用来保存每次tick需要执行的函数列表。一般来说就只有一个函数,就是Animation函数中定义的tick函数。jQuery.fx.interval可以用来设置动画每两帧之间的时间间隔,默认为毫秒。

  动画的分析就到这里。下面把动画相关的api列一下

jQuery.fn.show([ duration ] [, easing ] [, complete ] | options )(显示所有匹配的元素。此外,你还可以指定元素显示的过渡动画效果。如果元素本身是可见的,则不对其作任何改变。如果元素是隐藏的,则使其可见。与该函数相对的是hide()函数,用于隐藏所有匹配的元素)

jQuery.fn.hide([ duration ] [, easing ] [, complete ] | options)(隐藏所有匹配的元素。此外,你还可以指定元素隐藏的过渡动画效果。如果元素本身是不可见的,则不对其作任何改变。如果元素是可见的,则将其隐藏。)

jQuery.fn.toggle([ duration ] [, easing ] [, complete ] | options)(切换所有匹配的元素。此外,你还可以指定元素切换的过渡动画效果。所谓"切换",也就是如果元素当前是可见的,则将其隐藏;如果元素当前是隐藏的,则使其显示(可见)。)

这里介绍的toggle()函数用于切换元素的显示/隐藏。jQuery还有一个同名的事件函数toggle(),用于绑定click事件并在触发时轮流切换执行不同的事件处理函数。

Jquery1.9.1源码分析系列(十五)动画处理之外篇(jquery.min.js源代码)

jQuery.fn.slideDown([ duration ] [, easing ] [, complete ] | options)(显示所有匹配的元素,并带有向下滑动的过渡动画效果。向下滑动的动画效果,即元素可见区域的高度从0逐渐增大到其原有高度(向下逐渐展开)。如果元素本身是可见的,则不对其作任何改变。如果元素是隐藏的,则使其可见。

与该函数相对的是slideUp()函数,用于隐藏所有匹配的元素,并带有向上滑动的过渡动画效果)

jQuery.fn.slideUp([ duration ] [, easing ] [, complete ] | options)(隐藏所有匹配的元素,并带有向上滑动的过渡动画效果。向上滑动的动画效果,即元素可见区域的高度从原有高度逐渐减小到0(向上逐渐收起)。如果元素本身是隐藏的,则不对其作任何改变。如果元素是可见的,则将其隐藏)

jQuery.fn.slideToggle([ duration ] [, easing ] [, complete ] | options)(切换所有匹配的元素,并带有滑动的过渡动画效果。所谓"切换",也就是如果元素当前是可见的,则将其隐藏(向上滑动);如果元素当前是隐藏的,则使其显示(向下滑动))

jQuery.fn.fadeIn([ duration ] [, easing ] [, complete ] | options)(显示所有匹配的元素,并带有淡入的过渡动画效果。淡入的动画效果,即元素的不透明度的比例从0%逐渐增加到%。如果元素本身是可见的,则不对其作任何改变。如果元素是隐藏的,则使其可见。与该函数相对的是fadeOut()函数,用于隐藏所有匹配的元素,并带有淡出的过渡动画效果)

jQuery.fn.fadeOut([ duration ] [, easing ] [, complete ] | options)(隐藏所有匹配的元素,并带有淡出的过渡动画效果。所谓"淡出"的动画效果,即元素的不透明度的比例从%逐渐减小到0%。如果元素本身是隐藏的,则不对其作任何改变。如果元素是可见的,则将其隐藏)

jQuery.fn.fadeToggle([ duration ] [, easing ] [, complete ] | options)(切换所有匹配的元素,并带有淡入/淡出的过渡动画效果。所谓"切换",即如果元素当前是可见的,则将其隐藏(淡出);如果元素当前是隐藏的,则使其显示(淡入))

jQuery.fn.animate(cssProperties [, duration ] [, easing ] [, complete ] | cssProperties, options)(执行一个基于css属性的自定义动画。你可以为匹配的元素设置css样式,animate()函数将会执行一个从当前样式到指定的css样式的一个过渡动画。例如:某个div元素的当前高度为px,将其CSS height属性设为px,animate()将会执行一个将div元素的高度从px逐渐增加到px的过渡动画)

jQuery.fn.delay(duration [, queueName ])(延迟队列中下一项的执行。delay()可以将队列中等待执行的下一个动画延迟指定的时间后才执行。它常用在队列中的两个jQuery效果函数之间,从而在上一个动画效果执行后延迟下一个动画效果的执行时间。如果下一项不是效果动画,则它不会被加入效果队列中,因此该函数不会对它进行延迟调用)

jQuery.fn.stop([ queueName ] [, clearQueue [, jumpToEnd ] ])(停止当前匹配元素上正在运行的动画。默认情况下,stop()函数只会停止当前正在运行的动画。如果你使用animate()函数为当前元素设置了A、B、C这3段动画,如果当前正在执行的动画是A,则只会停止动画A的执行,不会阻止动画B和C的执行。当然,你也可以通过指定可选的选项参数来停止所有的动画。停止动画并不是恢复到该动画执行前的状况,而是直接停止,当前动画执行到什么状态,就停留在什么状态。例如:执行一个元素高度从px到px的过渡动画,当高度为px时停止了该动画,则当前高度仍然保持px的现状。如果该动画设置了执行完毕后的回调函数,则不会执行该回调函数。)

jQuery.fn.finish([ queueName ])(立即完成队列中的所有动画。finish()会停止当前正在运行的动画,删除所有队列中的动画,并完成匹配元素的所有动画)

jQuery.fn. fadeTo([speed,]opacity[,callback])(将被选元素的不透明度逐渐地改变为指定的值)

jQuery.fx.off(该属性用于设置或返回是否全局性地禁用所有动画。如果不对该属性设置值,则返回表示是否全局性地禁用了动画效果的布尔值。如果将该属性设为true,将全局性地禁用所有动画。所有正在执行的动画队列不会受到影响。尚未执行的任何动画队列都会在执行时立即完成,而不再带有动画效果。如果将该属性设为false,将全局性地启用动画效果。

你可以在遇到以下情况时,需要禁用动画效果:你在配置比较低的电脑上使用jQuery;某些用户可能由于动画效果而遇到了可访问性问题。)

jQuery.fx.interval(该属性用于设置或返回动画的帧速(毫秒值)。jQuery.fx.interval属性用于设置jQuery动画每隔多少毫秒绘制一帧图像(触发一次样式更改,浏览器可能会重新绘制当前页面)。该值越小,则动画的触发次数越多,动画效果也更明显、更平滑,当然也就越耗费性能。更改该属性值时,正在执行的动画队列将不受影响。尚未执行的任何动画队列都将按照更改后的帧速来绘制动画效果)

以上内容是积木网小编给大家介绍的Jquery1.9.1源码分析系列(十五)动画处理之外篇 ,jQuery 1.9.1源码分析系列(十五)之动画处理,点击了解详情。

jQuery使用$.ajax进行异步刷新的方法(附demo下载) 本文实例讲述了jQuery使用$.ajax进行异步刷新的方法。分享给大家供大家参考,具体如下:最近要用到jquery进行异步读取数据的功能,jquery提供了许多内

jQuery1.9.1源码分析系列(十六)ajax之ajax框架 AJAX简介AJAX是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。您应当具备的基础知识在继续学习之前,您需要对下面的知识有基本的

简要了解jQuery移动web开发的响应式布局设计 响应式布局设计是根据用户设备的屏幕分辨率来响应用户设备的一种设计。这意味着,无论用户是在移动、平板还是桌面设备上浏览Web页面,设计都将

标签: jquery.min.js源代码

本文链接地址:https://www.jiuchutong.com/biancheng/376207.html 转载请保留说明!

上一篇:jQuery实现ajax调用WCF服务的方法(附带demo下载)

下一篇:jQuery使用$.ajax进行异步刷新的方法(附demo下载)

  • 印花税缴纳方式一经选择1年之内不得修改
  • 报税日期是哪月哪天?
  • 劳务费增值税税率13%
  • 用友t3采购订单怎么录入
  • 发票已经做账但要退款账不平咋办
  • 小规模开票软件怎么下载
  • 经营利润和营业利润的区别
  • 个人股权转让未分配利润如何处理
  • 销售商品货款未收
  • 劳务与临时工的区别
  • 个人所得税该如何缴纳
  • 研发支出转入管理费用摘要
  • 以物易物差价印花税
  • 只有利息费用的财务费用如何结转?
  • 增值税专用发票可以开电子发票吗
  • 营改增后广告行业税率
  • 固定资产已折旧完报废如何处理
  • 简易计征的税率
  • 普通增值税发票查询结果不一致是什么原因?
  • 开专票必须公对公付款不然不开
  • 库存现金盘亏无法查明原因的分录
  • 收入低于10万免征附加税
  • 企业增资需要缴纳什么税
  • iphone6s怎么开启开发者选项
  • xlsx长数字
  • windows无法访问共享文件夹
  • 建安混合销售能分开吗
  • 哪些行业可以简易征收增值税
  • 金税盘服务费怎么申报抵扣
  • 公司为实习生买保险列支什么科目?
  • 对视同销售行为应如何进行税务处理
  • php实现功能
  • 劳务费支出计入什么科目?
  • framework 开发
  • async/await原理
  • 可用保证金余额为负
  • 微信开发怎么实现
  • 公司可以不再提取法定公积金
  • ctf题目网站
  • 03-JavaScript基础
  • 营业税差额计税
  • js继承的几种方式 各有什么优缺点
  • 公路修路步骤
  • 如何开发客户群体
  • 日常费用报销表格
  • java守护线程和普通线程jvm区别
  • 接受银行承兑汇票的流程
  • 企业所得税汇算清缴扣除标准2023
  • 工程结转成本分录
  • 股权转让母子关系是否缴纳个人所得税
  • 公司对于子公司的股权投资
  • 企业季度预缴所得税怎么算
  • 会务费要纳税调整吗
  • 资产报废折旧
  • 在贫困户入股分红大会上的讲话
  • 销售退回的会计分录 预计负债
  • 全额工资和实发工资
  • 非营利医疗机构是什么单位
  • 企业明细是什么
  • mysql如何实现多表查询
  • sql基础问题
  • mysql 存储过程存放在哪里
  • MySQL关键字执行顺序
  • 大白菜u盘备份win10教程
  • 证书登录什么意思
  • 怎么解决xp不能安装软件
  • php.exe是什么
  • Qt Quick + OpenGL + Bullet初次测试
  • re engine引擎
  • python3 创建字典
  • 播放一个灵异电影
  • 迁移图片到另一台设备什么意思
  • nodejs实战教程
  • android之handler
  • 举例讲解生产可能性曲线
  • android圆环进度条渐变
  • 河南省人民医院和郑大一附院哪个好
  • 杭州没有户口可以上幼儿园吗
  • 云南烟草税收是多少
  • 电信部门可以知道通话内容吗?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设