轻松实现jquery手风琴效果

 更新时间:2016年01月14日 16:09:24   作者:秋恨雪  
这篇文章主要为大家介绍了实现jquery手风琴效果的详细代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

为大家讲解的JQuery动画特效为手风琴,废话不多说,先看最终实现效果图。

一、实现原理分析

对应的立体图:

二、 HTML代码分析

<body> 
 <div id="container"> 
  <ul id="content"> 
   <li class="first"> 
    <h3>真</h3> 
    <div><img src="images/0.jpg"/></div> 
   </li> 
   <li class="second"> 
    <h3>的</h3> 
    <div><img src="images/1.jpg"/></div> 
   </li> 
   <li class="third"> 
    <h3>爱</h3> 
    <div><img src="images/2.jpg"/></div> 
   </li> 
   <li class="forth"> 
    <h3>你</h3> 
    <div><img src="images/4.jpg"/></div> 
   </li> 
  </ul> 
 </div> 
</body> 

1. id为container的div就是上面分析中的红色区域。
2. id为content的ul就是用来存放所有的li。

3. 每个li就是一个红色区域与对应图片的组合。

三、CSS代码分析

*{margin: 0; padding: 0;} 
 
  img{ 
   border:0; 
  } 
 
  #container 
  { 
   width:680px; 
   height: 300px; 
   margin: 100px auto; 
   position: relative; 
   border:3px solid red; 
   overflow: hidden; 
  } 
 
  #container #content 
  { 
   list-style: none; 
  } 
 
  #container #content li{ 
   width:590px; 
   height:300px; 
   position: absolute; 
  } 
 
  #container #content li.second{ 
   left:590px; 
  } 
 
  #container #content li.third{ 
   left:620px; 
  } 
 
  #container #content li.forth{ 
   left:650px; 
  } 
 
  #container #content li h3{ 
   float:left; 
   width: 24px; 
   height:294px; 
   border:3px solid blue; 
   background-color: yellow; 
   cursor: pointer; 
  } 
 
  #container #content li div{ 
   float: left; 
   width: 560px; 
   height:300px; 
  } 

1. *和img标签用来去除系统默认的间隙等效果。
2. #container就是在上面分析的可视区域,所以它的尺寸是 680 * 300,并且它是所有子元素的容器,所以它是相对定位(position: relative)。

3. #container #content就是去除掉ul默认的小圆点效果。

4. 所有的li采用绝对定位,并且它们的大小均为 590 * 300, 然后设置后面li的left值,并且设置li的h3(黄色区域)属性漂浮。

当上面所有的css样式设置完毕以后,最终呈现的效果就是分析图中的效果。

四、JQuery代码分析

手风琴的js交互代码其实非常简单,就是实时的改变对应li的绝对位置的left值就可以了,代码如下:

$(function(){ 
 
   $("#container #content li.first h3").mouseenter(function(){ 
    $("#container #content li.second").stop().animate({"left":590}, 1000); 
    $("#container #content li.third").stop().animate({"left":620}, 1000); 
    $("#container #content li.forth").stop().animate({"left":650}, 1000); 
   }); 
 
   $("#container #content li.second h3").mouseenter(function(){ 
    $("#container #content li.second").stop().animate({"left":30}, 1000); 
    $("#container #content li.third").stop().animate({"left":620}, 1000); 
    $("#container #content li.forth").stop().animate({"left":650}, 1000); 
   }); 
 
   $("#container #content li.third h3").mouseenter(function(){ 
    $("#container #content li.second").stop().animate({"left":30}, 1000); 
    $("#container #content li.third").stop().animate({"left":60}, 1000); 
    $("#container #content li.forth").stop().animate({"left":650}, 1000); 
   }); 
 
   $("#container #content li.forth h3").mouseenter(function(){ 
    $("#container #content li.second").stop().animate({"left":30}, 1000); 
    $("#container #content li.third").stop().animate({"left":60}, 1000); 
    $("#container #content li.forth").stop().animate({"left":90}, 1000); 
   }); 
    
  }); 

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

相关文章

  • 原生js实现一个放大镜效果超详细

    原生js实现一个放大镜效果超详细

    这篇文章主要介绍了原生js实现一个放大镜效果超详细,文章围绕主题展开详细的内容,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • 基于Bootstrap仿淘宝分页控件实现代码

    基于Bootstrap仿淘宝分页控件实现代码

    这篇文章主要介绍了基于Bootstrap仿淘宝分页控件实现代码,本文分步骤给大家介绍的非常详细,感兴趣的朋友参考下吧
    2016-11-11
  • js右下角弹出提示框示例代码

    js右下角弹出提示框示例代码

    这篇文章主要介绍了js右下角弹出提示框示例代码,即网页右下角弹出广告信息框实例代码,感兴趣的小伙伴们可以参考一下
    2016-01-01
  • 使用原生JS实现一个日期选择器(DatePicker)组件

    使用原生JS实现一个日期选择器(DatePicker)组件

    这篇文章主要为大家介绍了如何通过原生HTML/CSS/JavaScript完成一个日期选择器(datepicker)组件,一个纯手搓的组件的开发,有需要的可以了解下
    2025-01-01
  • 微信小程序实现简易计算器

    微信小程序实现简易计算器

    这篇文章介绍了微信小程序实现简易计算器的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • Bootstrap模态对话框用法简单示例

    Bootstrap模态对话框用法简单示例

    这篇文章主要介绍了Bootstrap模态对话框用法,结合实例形式分析了Bootstrap模态对话框的简单创建与使用操作技巧,需要的朋友可以参考下
    2018-08-08
  • 一个鼠标移动滑出层效果的实现代码

    一个鼠标移动滑出层效果的实现代码

    一个鼠标移动滑出层的代码,根据网上的视频教程学习的,这也算是第一次练手吧,鼠标靠近复选框的时候,就会显示出一个层,移开则消失。
    2011-08-08
  • 详解cocoscreater预制体prefab

    详解cocoscreater预制体prefab

    这篇文章主要介绍了详解cocoscreater预制体prefab的作用和使用方法,对此感兴趣的同学,可以回去试一试
    2021-04-04
  • javascript事件模型实例分析

    javascript事件模型实例分析

    这篇文章主要介绍了javascript事件模型用法,实例分析了事件模型、事件对象、事件监听器及事件传递的定义与使用技巧,需要的朋友可以参考下
    2015-01-01
  • 如何通过js实现图片预览功能【附实例代码】

    如何通过js实现图片预览功能【附实例代码】

    如何通过js实现图片预览功能呢?下面小编就为大家带来一篇用js实现图片预览功能。给大家做个参考吧,一起跟随小编过来看看
    2016-03-03

最新评论