JQuery中解决重复动画的方法


Posted in Javascript onOctober 17, 2016

下面我们就来总结一下几个JQuery中解决重复动画的办法 ,这里有几个常见的动画效果,它们分别是:图片滚动轮播,回到页面顶部,联级菜单滑出,手风琴。

图片滚动:

$("#banner-min-img1").mouseover(function (){
$("#banner-img").animate({left:"0px"},300)}
$("#banner-min-img2").mouseover(function (){
 $("#banner-img").animate({left:"-1041px"},300)}
$("#banner-min-img3").mouseover(function (){
$("#banner-img").animate({left:"-1990px"},300)}

回到页面顶部:

$("#goBackTop").click(function (){
$("html,body").animate({scrollTop:0},1000)}

在实际操作中我们会发现,代码是非常简单的,就那么2、3行,但是其中的队列控制也让人不忍直视:

回到页面顶部,如果你连续点击回到页面顶部多次,那么短时间内你就再也没办法用滚动条了;

滚动轮播,你指向100次,他就会滚100次才停止!完全不顾及你的感受!

那么如何来解决呢?其实jquery内置了2种方法,一种是stop,一种是在对象后面加上is(:animated),推荐使用后面一种,用上之后,腰也不酸了,动画也听话了;代码

回到顶部,代码如下:

$("#goBackTop").click(function (){
  if(!$("html,body").is(":animated"))
     {$("html,body").animate({scrollTop:0},1000)}
})

最后奉上 最简洁的 手风琴代码,只有2行:

CSS:

<meta charset="utf-8">
  <style>
    .wrap{
      width: 400px;
      min-height: 550px!important;
      background: #000;
      display: block!important;
    }
    div{
      width: 400px;
      height: 200px;
      background: #faf8ff;
      display: none;
      overflow: hidden;
    }
    p{
      width: 400px;
      height: 50px;
      line-height:50px;
      background: #62f1f4;
      cursor: pointer;
      border-bottom: 1px solid #eee;
      color: #777;
      font-size: 1.3em;
      font-style: italic;
      margin: 0;
      padding: 0;
    }
    .dis{
      display: block;
    }
  </style>

HTML:

<body>
<div class="wrap">
<p>Acc</p>
<div class="dis">大</div>
<p>click me</p>
<div>王</div>
<p>click me</p>
<div>派</div>
<p>click me</p>
<div>我</div>
<p>click me</p>
<div>来</div>
<p>click me</p>
<div>巡</div>
<p>click me</p>
<div>山</div>
</div>
</body>

jquery!

<script src="jquery1.9.1.js"></script>
<script>
  $("p").mousedown(function(){
    $(this).next("div").slideToggle();
    $(this).next("div").siblings("div").slideUp();
  });
</script>

希望本文所述对你有所帮助,JQuery中解决重复动画的办法内容就给大家介绍到这里了。希望大家继续关注我们的网站!想要学习JQuery可以继续关注本站。

Javascript 相关文章推荐
Javascript根据指定下标或对象删除数组元素
Dec 21 Javascript
javascript高级选择器querySelector和querySelectorAll全面解析
Apr 07 Javascript
Jquery Easyui菜单组件Menu使用详解(15)
Dec 18 Javascript
Bootstrap实现的标签页内容切换显示效果示例
May 25 Javascript
js实现音乐播放控制条
Sep 09 Javascript
微信小程序图片轮播组件gallery slider使用方法详解
Jan 31 Javascript
jQuery中内容过滤器简单用法示例
Mar 31 jQuery
判断js数据类型的函数实例详解
May 23 Javascript
解决vue-router 二级导航默认选中某一选项的问题
Nov 01 Javascript
详解vue中v-model和v-bind绑定数据的异同
Aug 10 Javascript
Vue实现手机计算器
Aug 17 Javascript
vue组件中实现嵌套子组件案例
Aug 31 Javascript
bootstrap读书笔记之CSS组件(上)
Oct 17 #Javascript
原生JavaScript制作计算器
Oct 16 #Javascript
JavaScript 实现的checkbox经典实例分享
Oct 16 #Javascript
JavaScript正则表达式实例详解
Oct 16 #Javascript
js实现碰撞检测特效代码分享
Oct 16 #Javascript
js+css3制作时钟特效
Oct 16 #Javascript
js实现可旋转的立方体模型
Oct 16 #Javascript
You might like
PHP 编程安全性小结
2010/01/08 PHP
phpcmsv9.0任意文件上传漏洞解析
2020/10/20 PHP
innerText和textContent对比及使用介绍
2013/02/27 Javascript
JS中setTimeout()的用法详解
2013/04/14 Javascript
jQuery 遍历- 关于closest() 的方法介绍以及与parents()的方法区别分析
2013/04/26 Javascript
javascript获取URL参数与参数值的示例代码
2013/12/20 Javascript
js 中将多个逗号替换为一个逗号的代码
2014/06/07 Javascript
Javascript中常见的逻辑题和解决方法
2016/09/17 Javascript
layui分页效果实现代码
2017/05/19 Javascript
nodejs 生成和导出 word的实例代码
2018/07/31 NodeJs
微信小程序wepy框架笔记小结
2018/08/08 Javascript
浏览器事件循环与vue nextTicket的实现
2019/04/16 Javascript
你了解vue3.0响应式数据怎么实现吗
2019/06/07 Javascript
Vue+elementui 实现复杂表头和动态增加列的二维表格功能
2019/09/23 Javascript
[00:32]DOTA2上海特级锦标赛 Ehome战队宣传片
2016/03/03 DOTA
Python中threading模块join函数用法实例分析
2015/06/04 Python
Python正则表达式教程之二:捕获篇
2017/03/02 Python
Python if语句知识点用法总结
2018/06/10 Python
tensor和numpy的互相转换的实现示例
2019/08/02 Python
Django 实现xadmin后台菜单改为中文
2019/11/15 Python
tensorflow 查看梯度方式
2020/02/04 Python
在pycharm中使用matplotlib.pyplot 绘图时报错的解决
2020/06/01 Python
pycharm软件实现设置自动保存操作
2020/06/08 Python
AmazeUI 缩略图的实现示例
2020/08/18 HTML / CSS
迪士尼法国在线商店:shopDisney FR
2020/12/03 全球购物
保险专业大专生求职信
2013/10/26 职场文书
幼儿园母亲节活动方案
2014/03/10 职场文书
企业演讲稿范文大全
2014/05/20 职场文书
机关干部四风问题自我剖析及整改措施
2014/10/26 职场文书
护理工作个人总结
2015/03/03 职场文书
2015年乡镇流动人口工作总结
2015/05/12 职场文书
2016五四青年节活动总结范文
2016/04/06 职场文书
浅谈Redis位图(Bitmap)及Redis二进制中的问题
2021/07/15 Redis
Python可视化学习之matplotlib内置单颜色
2022/02/24 Python
JVM的类加载器和双亲委派模式你了解吗
2022/03/13 Java/Android
MySQL库表太大怎么办? 数据库分库分表项目实践
2022/04/11 MySQL