欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jQuery实现手风琴效果(蒙版)

程序员文章站 2022-03-25 15:49:30
本文实例为大家分享了jquery实现手风琴效果的具体代码,供大家参考,具体内容如下 代码:

本文实例为大家分享了jquery实现手风琴效果的具体代码,供大家参考,具体内容如下

jQuery实现手风琴效果(蒙版)

代码:

<!doctype html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <title>document</title>
 <style type="text/css">
  *{
   padding:0;
   margin:0;
  }
  ul,ol{
   list-style: none;
  }
  .box{
   width: 900px;
   height: 300px;
   border:1px solid #333;
   margin:50px auto;
   position: relative;
   overflow: hidden;
  }
  .box ul li{
   position: absolute;
   width: 560px;
   height: 300px;
   top:0px;
  }
  .box ul li.no0{
   left:0px;
  }
  .box ul li.no1{
   left:180px;
  }
  .box ul li.no2{
   left:360px;
  }
  .box ul li.no3{
   left:540px;
  }
  .box ul li.no4{
   left:720px;
  }
  /*蒙版效果*/
  .mask{
   position: absolute;
   width: 560px;
   height: 300px;
   top:0;
   left: 0;
   background-color: rgba(0,0,0,.5);
  }
 </style>
</head>
<body>
 <div class="box" id="box">
  <ul>
   <li class="no0">
    <div class="mask"></div>
    <a href=""><img src=" images/0.jpg" alt=""></a>
   </li>
   <li class="no1">
    <div class="mask"></div>
    <a href=""><img src=" images/1.jpg" alt=""></a>
   </li>
   <li class="no2">
    <div class="mask"></div>
    <a href=""><img src=" images/2.jpg" alt=""></a>
   </li>
   <li class="no3">
    <div class="mask"></div>
    <a href=""><img src=" images/3.jpg" alt=""></a>
   </li>
   <li class="no4">
    <div class="mask"></div>
    <a href=""><img src=" images/4.jpg" alt=""></a>
   </li>
  </ul>
 </div>
 <script type="text/javascript" src="https://cdn.bootcss.com/jquery/1.12.4/jquery.js"></script>
 <script type="text/javascript">


  // 所有li添加鼠标进入事件
  $("li").mouseenter(function(){
   // 将鼠标进入的li序号提前保存
   var idx = $(this).index();

   // 图片序号小于idx往左移动85 * i。
   $("li:lt(" + (idx + 1 )+ ")").each(function(i){
    // each中i表示遍历到对象的序号。
    // console.log(i);
    $(this).stop(true).animate({"left": 85 * i},300);
   });

   // 图片序号大于idx往右移动
   $("li:gt(" + idx + ")").each(function(i){
    // console.log(i);
    $(this).stop(true).animate({"left": 560 + 85 * (idx + i)},300);
   });

   // 鼠标悬停的li变高亮
   $(this).children(".mask").stop(true).fadeout();
   // 排他
   $(this).siblings().children(".mask").stop(true).fadein();
  });


  //鼠标离开恢复状态
  $(".box").mouseleave(function(){
   // 所有li恢复180位置
   $("li").each(function(i){
    // console.log(i)
    $(this).stop(true).animate({"left": 180 * i},300);
   });
   // 加上蒙版
   $("li").children(".mask").stop(true).fadein();
  });
 </script>
</body>
</html>

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