" />
    软件日记
    • 首页
    • 主板
    • 散热器
    • 方法
    • 快捷键
    • 内存
    • 教程
    • 显卡
    • 电源
    当前位置:首页 > 日记 > 正文

    基于jQuery实现推拉门动画效果的两种方法

    基于jQuery实现推拉门动画效果的两种方法

    ''推拉门''动效也可以称作"手风琴"效果,大多数效果实现的思路基本是一样的,下面介绍两种方法,一种是通过改变图片的偏移位置实现移动,另一种是通过遍历背景图片后改变图片的宽度实现变换。

    实现方法一:改变图片宽度

    html+css代码

    <body>  <div class="box">    <ul>      <!-- <li>![](images/slidepic2.webp)</li> -->      <li></li>      <li></li>      <li></li>      <li></li>      <li></li>    </ul>  </div></body><style>    *{      padding: 0;      margin: 0;    }    .box{      /*收缩状态:缩放时每个图片的大小240px 所以总大小1200px*/      /*展开状态:当前图片宽度800px 其他图片宽度100px*/      width: 1200px;      height: 500px;      border:1px solid red;      margin: 50px auto;    }    .box ul{      list-style: none;      width: 1210px;    }    /*设置每一张图片的大小和float: left*/    .box ul li{      width: 240px;      height: 500px;      /*background: url(images/slidepic2.webp);*/      float: left;    }  </style>

    jQuery实现

    <script src = 'jquery-3.2.1.js'></script><script>  $(function(){    //1遍历每一张li 获取每个元素设置对应的图片    var lis = $('li');    lis.each(function(index, element){      //通过设置背景图片名称改变图片的显示      var imgName = "images/slidepic" + (index + 2) +".webp ";      $(element).css('background', "url('"+ imgName +"')")    });    //2.展开状态    //鼠标滑入改变对应图片宽度800 其他图片(兄弟)改为100    lis.mouseenter(function(){      // console.log(this); 当前的li DOM元素      //当前的图片的宽度变为800      $(this).stop().animate({width: 800});      //其他图片的宽度变为100      $(this).siblings('li').stop().animate({width: 100});    });    //3鼠标滑出是全部显示为收缩状态    lis.mouseout(function(){      lis.stop().animate({width: 240});    });  })</script>

    jQuery精简后代码

    //精简代码$(function(){  $('li').each(function(index, element){    $(element).css('backgroud',"url('images/slidepic"+(index + 2)+.webp')");  }).mouseenter(function(){    $(this).stop().animate({width: 800}).siblings().stop().aniamte(width: 100});  }).mouseout(function(){    $('li').stop().animate({width: 240});  });})

    实现方法二:改变图片的偏移值

    html+css代码

    <body>  <div class="picList">    <ul>      <li>![](images/slidepic8.webp)</li>      <li>![](images/slidepic3.webp)</li>      <li>![](images/slidepic4.webp)</li>      <li>![](images/slidepic5.webp)</li>      <li>![](images/slidepic7.webp)</li>    </ul>  </div></body><style>    *{      background-color: #aaa;      padding: 0;      margin: 0;    }    ul{list-style: none;}    .picList{      width: 1000px;      height: 400px;      /*border:1px solid #eee;*/      margin:100px auto;      position: relative;      overflow: hidden;    }    /*设置定位属性 所有图片覆盖在起始位置*/    .picList ul li{      position: absolute;      width: 1000px;      height: 400px;      top: 0;    }    img{      width: 100%;      height: 400px;      cursor: pointer;    }</style>

    jQuery实现

    <script src = 'jquery-3.2.1.js'></script><script >  $(function(){    //1获取所有的图片 设置初始的收缩状态left:i*200    var lis = $('li');    for(var i = 0; i < lis.length; i++){      lis.eq(i).css({left:i*200 + 'px' });    }    //2.设置hover内置函数,实现鼠标滑入展开滑出收缩效果    lis.hover(function(){      var index = $(this).index(); //DOM对象转换jQuery对象      //2.1鼠标滑入后,当前图片的前面图片偏移位置减小到 j*100位置      for(var j = 0; j <= index; j++){        lis.eq(j).stop().animate({left: j*100 + 'px'},300);      }      //2.2鼠标滑入后,当前图片的后面图片偏移位置扩大到 500+j*100位置      for(var j = index + 1; j < lis.length; j++){        lis.eq(j).stop().animate({left: 500+j*100 + 'px'},300);      }    },function(){ //2.3鼠标滑出后,所有图片恢复到原来的位置 i*200      for(var i = 0; i < lis.length; i++){        lis.eq(i).stop().animate({left: i*200 + 'px'},300);      }    });  })</script>

    注意:方法一在实现的过程中,注意宽度和图片命名的设置。

    提示:这里使用的是jQuery代码实现,javaScript代码也是一样的可以实现,只是修改下遍历过程和内置函数方法,另外再重写动画函数(前面的笔记有封装好的animate函数,可以直接引入使用)。

    总结

    以上所述是小编给大家介绍的基于jQuery实现图片推拉门动画效果的两种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

    方法动画效果推拉门两种电脑软件  

    热门内容

    相关文章

    QQ音乐如何列表循环 QQ音乐单曲循

    QQ音乐如何列表循环 QQ音乐单曲循

    循环,音乐,列表,单曲,电脑软件,QQ音乐是我们经常使用的一款免费的音乐软件。小编也经常用它听歌,更新了版本的QQ音乐很多功能的入口都不同了,下面小编为大家介绍一下qq音乐怎么设置播放方式1、打开qq音乐, 找到自己心爱的歌曲后播放,找到我们点…

    史上最全JavaScript数组去重的十种

    史上最全JavaScript数组去重的十种

    数组去重,方法,推荐,史上,最全,一、前言:我们在实际工作中,或者在面试找工作时,都会用到或者被问到一个问题,那就是“数组如何去重”。是的,这个问题有很多种解决方案,看看下面的十种方式吧!二、数组去重方式大汇总:Methods 1: 思路:定义一个新数组,…

    IIS7.5 http 1.1 新建应用程序失败

    IIS7.5 http 1.1 新建应用程序失败

    解决方法,应用程序,电脑软件,http,今天突然服务器接口默认的主机头打开报错,错误信息是:http 1.1 新建应用程序失败,很奇怪,后来经过研究才发现是改动了IIS名字,分享下如何解决的。解决方法很简单: 1.退出IIS重新启动 2.然后点击:应用池程序-Defau…

    git提交空目录的方法

    git提交空目录的方法

    方法,提交,目录,电脑软件,git,前言git和 svn不同,仅仅跟踪文件的变动,不跟踪目录。所以,一个空目录,如果里面没有文件,即便 git add 这个目录,另外在别处 check out 的时候,是没有这个空目录的。只跟踪文件变化,不跟踪目录,这么设计是有原因的。但这…

    JavaScript中无法通过div.style.le

    JavaScript中无法通过div.style.le

    解决方法,获取值,电脑软件,div,JavaScript,一、问题总结: 样式必须直接写在元素内部才能通过div.style.left直接获取属性值(也就是必须是内联样式才行),定义在css中的样式不能通过这种方式获取。 让元素移动到200停止setTimeout ( functio…

    受损的dll文件如何修复

    受损的dll文件如何修复

    文件,受损,电脑软件,dll,电脑使用时间长了,经常会遇到这样一种问题,在你打开某个程序,会弹出一个提示窗口,提示程序中某个dll文件丢失或损坏,无法正常运行。其实这时候我们可以试着去网上下载相同的dll文件,说不定可以解决了,下面是给大家推荐一个…

    JS获取数组中出现次数最多及第二多

    JS获取数组中出现次数最多及第二多

    方法,组中,次数最多,电脑软件,JS,本文实例讲述了JS获取数组中出现次数最多及第二多元素的方法。分享给大家供大家参考,具体如下:整型数组中出现次数最多和第二多的元素用哈希数组function f(arr){ var i; var length=arr.length; var hash…

    Excel表格中怎么运用函数求差

    Excel表格中怎么运用函数求差

    函数,表格,电脑软件,Excel,  在用Excel求差的时候,也是可以使用求和函数的,只需要对函数的参数稍作修改即可。以下是小编为您带来的关于Excel函数求差,希望对您有所帮助。Excel函数求差方法一:使用公式1、选中C2单元格,输入&ldquo;=A2-B2&rdqu…

    正则表达式全局匹配模式 | g修饰符

    正则表达式全局匹配模式 | g修饰符

    匹配模式,修饰符,正则表达式,全局,电脑软件,正则表达式g修饰符:g修饰符用语规定正则表达式执行全局匹配,也就是在找到第一个匹配之后仍然会继续查找。语法结构:构造函数方式:new RegExp("regexp","g")对象直接量方式:/regexp/g浏览器支…

    ps怎么设计由文字组成的立方体效果

    ps怎么设计由文字组成的立方体效果

    文字,立方体,效果图,电脑软件,ps,今天我们就来看看ps制作由文字组成的正方体的教程,主要使用智能对象完成。软件名称:Adobe Photoshop 8.0 中文完整绿色破解版软件大小:150.1MB更新时间:2015-11-041、先用矩形工具画出3个一样大的矩形。2、在图…

    Win7/8修改本地连接DNS详解图文教

    Win7/8修改本地连接DNS详解图文教

    本地连接,图文教程,修改,详解,电脑软件,电脑DNS怎么改? 之前我们发表过适于XP的DNS设置教程,由于时间比较早,加上写不太详细,许多用户不知道如何操作,今天为大家提供了Win7/8设置DNS的图文详解教程首先,通过开始菜单中打开控制面板,然后选择&rdqu…

    PS怎么在绿萝花瓶中合成一条小金鱼

    PS怎么在绿萝花瓶中合成一条小金鱼

    花瓶,绿萝,电脑软件,PS,大家都知道用PS可以制作出很多很多出乎意料的图片,但是得有创意和技术,小编这里谈不上技术,但是可以告诉大家最基本的操作方法。软件名称:Adobe Photoshop 8.0 中文完整绿色破解版软件大小:150.1MB更新时间:2015-11-041、…

    软件日记

    标签

    • 水冷
    • 联想
    • 性能
    • 机箱
    • 升级
    • 电源线
    • 主机
    • 方法
    • 旧电脑
    • 显示器
    • 显示
    • 牌子
    • 频率
    • 蓝屏
    • 笔记本电脑
    • 重启
    • 电脑系统
    • 价格表
    • 黑屏
    • 酷睿
    • 安装
    • 英特尔
    • 参数
    • 双核
    • 视频
    • 台式电脑
    • 电脑主板
    • 价格
    • 知乎
    • 控制
    • 硅胶
    • 故障

    推荐

    • 金蝶录入凭证双击 | 金蝶软件录入凭证有哪些快捷键,就金蝶录入凭证双击 | 金蝶软件录入凭证有哪些快捷键,就
    • 怎样调出电脑cpu | 怎样调出电脑CPU温度怎样调出电脑cpu | 怎样调出电脑CPU温度
    • 电脑CPU针脚剪掉 | 电脑cpu掉了一个针脚电脑CPU针脚剪掉 | 电脑cpu掉了一个针脚
    • 双cpu电脑用处 | 双CPU的电脑双cpu电脑用处 | 双CPU的电脑
    • 限制电脑cpu线程 | 线程指定cpu限制电脑cpu线程 | 线程指定cpu
    软件日记

    Copyright © 软件日记 2023 rjrj.net All Right Reserved. 京ICP备19020253号-12

    声明:本站涵盖的内容、图片等数据系网络、用户收集整理发布,部分内容未能与原作者取得联系。若涉及版权问题,请联系我们进行删除!