// animate():第一个参数:{width:200} 运动的值和属性
// 第二个-时间:默认400ms{},1000
//第三个-运动形式-两种:1.默认:swing(慢快慢) 2.linear(匀速)
//第四个-回调函数
//$(this).animate({width:"300px",height:"300px"},2000,'linear',function(){alert(123)});

//stop():默认阻止当前运动,不阻止所有,stop(true) 阻止后续所有运动,stop(true,true) 当前运动立马完成 = finish()立即完成运动。

stop(true,true) 停止到最终的目标点

finish() 立即完成运动。

运动前加stop()可以清除运动队列(不总是重复)。(鼠标移入移除 mouseover、out)

$(this).stop().animate({width:'200px'},1000)  //针对的是同一个元素上面的效果

会用:

//动画延迟
.leftToRight{left:0;
}
$('.leftToRight').delay(800).animate({left:100px},"solw");animated方法中没有封装transform属性解决方案:
(1)css方法$($sub).animate({},5000,function(){  $(this).css({'transform':'translateX(300px)'});
})
在动画函数的回调函数里执行。时间和效果就没了意义,毕竟函数是在动画完成之后才有调用(2)addClass方法
可以通过addClass()方法来代替此动作:
比如想旋转一个icon
在css中加入一个classCss代码
.add_transform{  transform:rotate(180deg);  -ms-transform:rotate(180deg);/* IE9 */  -moz-transform:rotate(180deg);/* Firefox */  -webkit-transform:rotate(180deg);/* Safari和Chrome */  -o-transform:rotate(180deg);/* Opera */  transition:all 0.5s ease-in-out;  -moz-transition:all 0.5s ease-in-out;/*Firefox 4 */  -webkit-transition:all 0.5s ease-in-out;/* Safari和Chrome */  -o-transition:all 0.5s ease-in-out;/* Opera */
}  然后通过$(“选择器”).toggleClass(“.add_transform”);来使icon的旋转变为动画效果。
<script>
//jQuery动画animate和scrollTop结合使用
$('li').click(function(){//$(document).scrollTop($(this).index()*viewHeight);var H = $(this).index()*viewHeight;var heiGht = $('#div1').offset().top;$('html,body').animate({scrollTop: H}, 1000);});
</script>
<script type="text/javascript" src="jquery-1.9.1.min.js"></script>
<style>#box { width: 100px; height: 100px; background-color: red; position:absolute;
} #pox { width: 100px; height: 100px; background-color: green; position: absolute; top: 200px;
}
</style>
</head>
<body><input type="button" class="button" value="开始" /><input type="button" class="stop" value="停止" /> <div id="box">box</div> <div id="pox">pox</div>
<script type="text/javascript">$(function () {   $(".button").click(function () { $("#box").animate({ left: "300px"  //要想使用left top bottom right这种方向性的属性 先必须对"#box元素设置CSS 绝对定位 }) })  //-------------------------------------同步动画  $(".button").click(function () { $("#box").animate({ width: "300px", height: "200px", opacity:0.5, //透明度为0.5 注:透明度的值在0-1之间 fontSize:"200px", //字体大小设为30px }) //第一个参数:是一个对象,他是键值对的css }) //让指定元素左右移动$("#right").click(function(){$(".block").animate({left: '+50px'}, "slow");});$("#left").click(function(){$(".block").animate({left: '-50px'}, "slow");});//--------------------------------------列队动画,一个一个来 $(".button").click(function () { $("#box").animate({ width: "300px"}, 1000, function(){ $("#box").animate({height:"200px"},1000,function(){ $("#box").animate({opacity:0.5},1000,function(){ $("#box").animate({fontSize:"150px"},1000,function(){alert("完毕")}) }); }); }); }) //在同一个元素的基础上,使用链式(队列)调用也可以实现列队动画 $(".button").click(function () { $("#box") .animate({ width: "300px" }, 1000) .animate({ height: "200px" }, 1000) .animate({ opacity: 0.5 }, 1000) .animate({ fontSize: "150px" }, 1000, function () { alert("列队动画执行完毕")}) }); //那我们现在的需求是:不管你有几个元素,我都要他们依次实现列队动画效果。(测试了一下,只能用这种回调函数嵌套的方式来实现了) $(".button").click(function () { $("#box").animate({ width: "300px" }, 1000, function () { //box$("#pox").animate({ height: "200px" }, 1000, function () { //#pox$("#box").animate({ height: "200px"}, 1000, function () { $("#pox").animate({ fontSize: "150px" }, 1000, function () { alert("列队动画执行完毕") }); }) }) }) }) //那下面再来了解下,列队动画的停止 $(".button").click(function () { $("#box").animate({ left: "300px" },1000) .animate({ bottom: "300px" }, 1000) .animate({ width: "300px" }, 1000) .animate({ height: "300px" }, 1000)                   }) $(".stop").click(function () { $("#box").stop(true); // 加参数停止所有动画,不加停止当前 }) //现在,我们想继续在.queue()方法后面再增加一个隐藏动画,这时发现居然无法实现。
这是.queue()特性导致的。
有两种方法可以解决这个问题,jQuery 的.queue()的回调函数可以传递一个参数,
这个参数是next 函数,在结尾处调用这个next()方法即可再链式执行列队动画。 //链式编程实现队列动画 $(".button").click(function () { //四个动画 $("#box") .slideUp(1000) .slideDown(1000) .queue(function (next) { //这个next是一个函数 $(this).css("background", "yellow"); next();}) .hide(1000); }); //顺序编程实现队列动画 我们看到使用顺序调用的列队,逐个执行,非常清晰 $(".button").click(function () { $("#box").slideUp(1000); $("#box").slideDown(1000); $("#box").queue(function (next) { $(this).css("background", "yellow"); next(); }); $("#box").hide(1000); }); });</script>
</body>

jq animate动画详解相关推荐

  1. 超级强大的SVG SMIL animation动画详解

    超级强大的SVG SMIL animation动画详解 本文摘自超级强大的SVG SMIL animation动画详解_Zoomla!逐浪CMS官网 (z01.com),网站看上去有年头了,担心哪天会 ...

  2. [转]超级强大的SVG SMIL animation动画详解

    超级强大的SVG SMIL animation动画详解 本文花费精力惊人,具有先驱前瞻性,转载规则以及申明见文末,当心予以追究. 本文地址:http://www.zhangxinxu.com/word ...

  3. Android 动画详解-思维导图版

    转载请注明链接: https://blog.csdn.net/feather_wch/article/details/81503233 涉及视图动画(补间动画.逐帧动画).属性动画三种动画的使用方法, ...

  4. vue3过渡和动画详解

    vue3过渡和动画详解 一.认识动画 二.Vue的transition动画 三.Transition组件的原理 四.class添加的时机和命名规则 五.过渡css动画 六.同时设置过渡和动画 七.过渡 ...

  5. 学习笔记-Flutter 动画详解(一)

    Flutter 动画详解(一) 本文主要介绍了动画的原理相关概念,对其他平台的动画做了一个简要的梳理,并简要的介绍了Flutter动画的一些知识. 1. 动画介绍 动画对于App来说,非常的重要.很多 ...

  6. Android 属性动画 详解

    Android 属性动画 详解 Android动画类型: View Animation(即所谓的Tween Animation补间动画):View Animation相当简单,不过只能支持简单的缩放. ...

  7. Unity中的Animator动画详解

    Unity中的Animator动画详解 Animator动画导入 Animator动画详解 动画类型选择 Rig面板属性 Mode面板属性 Animation面板属性 动画片段 控制使用 Animat ...

  8. iOS核心动画详解swift版----基础动画

    2019独角兽企业重金招聘Python工程师标准>>> iOS核心动画详解swift版---基础动画 创建工程,添加2个ViewController,通过rootViewContro ...

  9. [转] ReactNative Animated动画详解

    http://web.jobbole.com/84962/ 首页 所有文章 JavaScript HTML5 CSS 基础技术 前端职场 工具资源 更多频道▼ - 导航条 -首页所有文章JavaScr ...

最新文章

  1. Gitlab完整搭建手册+排错
  2. 句法依存分析_恭喜 | 黑龙江大学自然语言处理实验室获得NLPCC2019跨领域移植中文依存句法分析封闭测试第一名!...
  3. Eclipse 导入逆向工程
  4. msyql主从同步实践
  5. VMware Workstation创建独立网络
  6. eclipse定义和修改模板
  7. docker安装部署_有关docker安装yearning和部署inception(闭源)
  8. 计算机系统-理论-运行时堆栈/栈顶
  9. HQL (迫切)左外连接
  10. Android 图片展示器
  11. Java Maps的9个常见问题
  12. Axure工具概述以及Axure RP9的安装汉化和授权
  13. 二进制编码转ASCII字符与字符转二进制码的小解码器、编码器
  14. 蓝牙打印 设置打印样式_Android——蓝牙连接打印机以及打印格式
  15. usb打印机linux识别不了怎么办,打印机usb连接电脑无法识别怎么办_打印机usb插上无响应怎么办-win7之家...
  16. Codewar刷题总结
  17. 关于hibernate的见解
  18. Tomb.com—新域名上线
  19. 篮球比赛计时计分系统
  20. Windows将鼠标单击转换为双击的原理

热门文章

  1. 如何自定义百度云常用服务器,经验分享:如何将百度云做成网站文件服务器
  2. 汽车电子can总线(一)物理层
  3. 弯道超车老司机戏耍智能合约——竞态条件漏洞 | 漏洞解析连载之三
  4. COCOS敌人和AI制作
  5. JQuery 操作弹出层 iframe页面元素的方式
  6. 自然语言处理NLP星空智能对话机器人系列:深入理解Transformer自然语言处理 GLUE MRPC
  7. uniApp学习(8)搜索框的创建和自动获取焦点
  8. 【鼠标手势】Mouselnc使用笔记/Mouselnc+AHK=无敌好用/鼠标手势分享
  9. php app 推送原理,微信公众号开发的那点事第一篇——消息推送原理
  10. -- 40、查询选修“张三“老师所授课程的学生中,成绩最高的学生信息及其成绩