软件日记
    • 首页
    • 内存
    • 方法
    • 快捷键
    • 桌面
    • 芯片
    • 设置
    • 内存条
    • 主板
    当前位置:首页 > 日记 > 正文

    JS实现手风琴效果

    JS实现手风琴效果

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

    推拉门收缩状态.webp

    "推拉门"展开状态.webp

    "推拉门"实现方法一:改变图片宽度

    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>

    "推拉门"实现方法二:改变图片的偏移值

    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函数,可以直接引入使用)。

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

    手风琴效果电脑软件js  

    热门内容

    相关文章

    Windows服务器安全维护需注意八大

    Windows服务器安全维护需注意八大

    服务器安全,维护,要点,需注意,电脑软件,1、对网站的代码进行检查,检查是否被黑客放置了网页木马和ASP木马、网站代码中是否有后门程序。2、对网站代码安全性进行检查,检查是否存在SQL注入漏洞、上传文件漏洞等常见的危害站点安全的漏洞。3、…

    细数Ajax请求中的async:false和asy

    细数Ajax请求中的async:false和asy

    请求,差异,电脑软件,Ajax,async,实例如下:function test(){ var temp="00"; $.ajax({ async: false, type : "GET", url : 'userL_checkPhone.do', complete: function(msg){ alert('complete'); }, succe…

    Angularjs为ng-click事件传递参数

    Angularjs为ng-click事件传递参数

    参数,参数传递,事件传递,事件,电脑软件,在angularjs开发中,我们需要为ng-click事件传递一个参数。在js中,可以接到参数:演示:…

    详解微信小程序Page中data数据操作

    详解微信小程序Page中data数据操作

    函数调用,数据操作,详解,程序,电脑软件,微信小程序Page中data数据获取和设置一、Page中data数据的获取和设置: 1、设置data数据 this.setData(object)setData() 参数格式:接受一个对象,以 key,value 的形式表示将 this.data 中的 key 对…

    Excel2013怎么批量插入Excel2013批

    Excel2013怎么批量插入Excel2013批

    批量插入,步骤,方法,插入图片,批量,  有时遇到需要大量在excel中插入图片的情形,比如说为每行职工信息建立一个头像,通过记事本复制一行图片路径的代码,就可以快速达到目标。要怎么实现这操作呢?下面小编就来告诉你吧。Excel2013批量插入图…

    PS怎么设计一款指针转动的时钟?

    PS怎么设计一款指针转动的时钟?

    时钟,指针,电脑软件,PS,PS中想要设计一个动画,就是时钟的指针不停的转动,该怎么制作呢?下面我们就来看看详细的教程。软件名称:Adobe Photoshop 8.0 中文完整绿色破解版软件大小:150.1MB更新时间:2015-11-041、首先,新建一个300px*200px的文件。2…

    使用JQuery实现轮播效果的实例 |

    使用JQuery实现轮播效果的实例 |

    推荐,实例,效果,电脑软件,JQuery,【效果如图】【原理简述】这里大概说一下整个流程:1,将除了第一张以外的图片全部隐藏,2,获取第一张图片的alt信息显示在信息栏,并添加点击事件3,为4个按钮添加点击侦听,点击相应的按钮,用fadeOut,fadeIn方法显示图片…

    Atom-IDE 的使用方法简单介绍

    Atom-IDE 的使用方法简单介绍

    使用方法,简单,电脑软件,Atom,IDE,Atom-IDE 的使用方法简单介绍今日,GitHub 宣布与 Facebook 合作推出了 Atom-IDE —— 它包括一系列将类 IDE 功能带到 Atom 的可选工具包。初次发布的版本包括更智能、感知上下文的自动完成;导航功能,如大纲…

    excel表格内容错乱怎么办

    excel表格内容错乱怎么办

    方法,解决方法,序号,表格,内容,  Excel的表格中多数都会有序号,但如果手动输入序号会有几率是混乱的,造成数据的顺序颠倒,要避免这种情况需要用到自动排序,那么具体怎么解决excel 表格序号混乱问题呢,接下来请看本教程吧。Excel表格内容错乱的…

    Word中进行设置格式的操作使用

    Word中进行设置格式的操作使用

    设置,图片格式,操作,操作步骤,格式,  word怎么设置图片格式呢?当我们在word文档资料插一张图片在文字里,在文字不是我们喜欢的设置格式。今天,小编就教大家在Word中进行设置图片格式的操作使用。Word中进行设置图片格式的操作步骤如下图可…

    node.js平台下的mysql数据库配置及

    node.js平台下的mysql数据库配置及

    平台,连接数据库,配置,连接,数据库配置,首先下载mysql模块包npm install mysql --save-dev专门为数据库创建一个模块,放入一个文件中。var mysql=require("mysql");exports.connect=function(sql,param,callback){ var db=mysql.createCo…

    jQuery事件_动力节点Java学院整理

    jQuery事件_动力节点Java学院整理

    事件,学院,节点,动力,电脑软件,因为JavaScript在浏览器中以单线程模式运行,页面加载后,一旦页面上所有的JavaScript代码被执行完后,就只能依赖触发事件来执行JavaScript代码。浏览器在接收到用户的鼠标或键盘输入后,会自动在对应的DOM节点上触…

    软件日记

    标签

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

    推荐

    • 金蝶录入凭证双击 | 金蝶软件录入凭证有哪些快捷键,就金蝶录入凭证双击 | 金蝶软件录入凭证有哪些快捷键,就
    • 怎样调出电脑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

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