jQuery----淘宝商品展示(类似与tab切换)

Posted wangyujie1994

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery----淘宝商品展示(类似与tab切换)相关的知识,希望对你有一定的参考价值。

实现效果如图:

技术分享图片     技术分享图片     技术分享图片     技术分享图片

 

功能需求:

①鼠标进入商品名称,商品名称变色,同时对应的物品展示图片显示对应的物品,鼠标移出时候,商品名称恢复原来的颜色

 

实现分析:

1.html+CSS页面结构如下:

技术分享图片

页面结构设计中,需要注意的知识点:

①商品li设置边框时候,只设置下边框

②三个列表之间的分割线,使用id为center的ul 的border-right、border-left属性

③超出大盒子的部分使用overflow:hidden

 

 

代码如下:

  1 <!DOCTYPE html>
  2 <html>
  3     <head>
  4         <meta charset="utf-8">
  5         <title>淘宝精品服饰展示</title>
  6         
  7         <style type="text/css">
  8             *{
  9                 padding: 0px;
 10                 margin: 0px;
 11                 font-size: 12px;
 12             }
 13             ul{
 14                 list-style: none;
 15             }
 16             a{
 17                 text-decoration: none;
 18                 color: black;
 19             }
 20             .wrapper{
 21                 width: 298px;
 22                 height: 248px;
 23                 margin: 100px auto 0;
 24                 border: 1px solid pink;
 25                 overflow: hidden;
 26             }
 27             .wrapper ul{
 28                 float: left;
 29             }
 30             
 31             #left li,#right li{
 32                 background: url(images/lili.jpg) repeat-x;
 33                 width: 48px;
 34                 height: 27px;
 35                 line-height: 27px;
 36                 text-align: center;
 37                 display: block;
 38                 border-bottom: 1px solid pink;
 39             }
 40             
 41             #left li:hover,#right li:hover{
 42                 background: url(images/abg.gif) repeat-x;
 43             }
 44             
 45             #center{
 46                 border-left: 1px solid pink;
 47                 border-right: 1px solid pink;
 48                 
 49             }
 50         </style>
 51         
 52         <script src="js/jquery-1.12.2.js" type="text/javascript" charset="utf-8"></script>
 53         <script type="text/javascript">
 54             $(function(){
 55                 //获取左侧列表中所有的li,注册鼠标进入事件
 56                 $("#left>li").mouseover(function(){
 57                     //获取鼠标当前进入的li的索引
 58                     var index=$(this).index();
 59                     //除了当前的li,其他兄弟li全部隐藏
 60                     $("#center>li:eq("+index+")").siblings("li").hide();
 61                     $("#center>li:eq("+index+")").show();
 62                 });
 63                 //获取右侧列表中所有的li,注册鼠标进入事件
 64                 $("#right>li").mouseover(function(){
 65                     var index=$(this).index()+9;
 66                     $("#center>li:eq("+index+")").siblings("li").hide();
 67                     $("#center>li:eq("+index+")").show();
 68                 });
 69             });
 70         </script>
 71     </head>
 72     <body>
 73         <div class="wrapper">
 74             <ul id="left">
 75                 <li><a href="#">女靴</a></li>
 76                 <li><a href="#">雪地靴</a></li>
 77                 <li><a href="#">冬裙</a></li>
 78                 <li><a href="#">呢大衣</a></li>
 79                 <li><a href="#">毛衣</a></li>
 80                 <li><a href="#">棉服</a></li>
 81                 <li><a href="#">女裤</a></li>
 82                 <li><a href="#">羽绒服</a></li>
 83                 <li><a href="#">牛仔裤</a></li>
 84             </ul>
 85             
 86             <ul id="center">
 87                 <li><a href="#"><img src="images/女靴.jpg" height="248px"></a></li>
 88                 <li><a href="#"><img src="images/雪地靴.jpg" height="248px"></a></li>
 89                 <li><a href="#"><img src="images/冬裙.jpg" height="248px"></a></li>
 90                 <li><a href="#"><img src="images/呢大衣.jpg" height="248px"></a></li>
 91                 <li><a href="#"><img src="images/毛衣.jpg" height="248px"></a></li>
 92                 <li><a href="#"><img src="images/棉服.jpg" height="248px"></a></li>
 93                 <li><a href="#"><img src="images/女裤.jpg" height="248px"></a></li>
 94                 <li><a href="#"><img src="images/羽绒服.jpg" height="248px"></a></li>
 95                 <li><a href="#"><img src="images/牛仔裤.jpg" height="248px"></a></li>
 96                 <li><a href="#"><img src="images/女包.jpg" height="248px"></a></li>
 97                 <li><a href="#"><img src="images/男包.jpg" height="248px"></a></li>
 98                 <li><a href="#"><img src="images/登山鞋.jpg" height="248px"></a></li>
 99                 <li><a href="#"><img src="images/皮带.jpg" height="248px"></a></li>
100                 <li><a href="#"><img src="images/围巾.jpg" height="248px"></a></li>
101                 <li><a href="#"><img src="images/皮衣.jpg" height="248px"></a></li>
102                 <li><a href="#"><img src="images/男毛衣.jpg" height="248px"></a></li>
103                 <li><a href="#"><img src="images/男棉服.jpg" height="248px"></a></li>
104                 <li><a href="#"><img src="images/男靴.jpg" height="248px"></a></li>
105             </ul>
106             
107             <ul id="right">
108                 <li><a href="#">女包</a></li>
109                 <li><a href="#">男包</a></li>
110                 <li><a href="#">登山鞋</a></li>
111                 <li><a href="#">皮带</a></li>
112                 <li><a href="#">围巾</a></li>
113                 <li><a href="#">皮衣</a></li>
114                 <li><a href="#">男毛衣</a></li>
115                 <li><a href="#">男棉服</a></li>
116                 <li><a href="#">男靴</a></li>
117             </ul>
118         </div>
119     </body>
120 </html>

 

jQuery实现思路:

①分别获取左侧列表、右侧列表中所有的li,注册鼠标进入事件

$( "#left>li" ).mouseover( function(){ } );//左侧

$( "#right>li" ),mouseover( function(){ } );//右侧

②获取鼠标当前进入的li的index

var index=$( this ).index(); //该方法获取元素的index

③右侧元素的index需要上述index+9,因为中间图片是所有的图片放在一起,而左右的li是分开放置,为了获得li对应的图片,需要给右侧li的索引加上左侧li的数量

④鼠标进入的li的图片显示,其他的图片隐藏

$( "#center>li:eq("+index+“)" ).siblings("li").hide();

$( "#center>li:eq("+index+")").show();

注意:siblings("标签名字")  获取选中标签的所有的兄弟标签

 

 

所需素材下载地址:https://pan.baidu.com/s/11qXxk8uXgDe4JoBMw5__Rg

注意路径的配合  images与html页面应该为同一等级文件夹

以上是关于jQuery----淘宝商品展示(类似与tab切换)的主要内容,如果未能解决你的问题,请参考以下文章

Vue仿淘宝订单状态的tab切换效果——全

Vue仿淘宝订单状态的tab切换效果——全

标签页(tab)切换的原生js,jquery和bootstrap实现

Little DemoTab标签

jQuery的DOM操作实例——选项卡&&Tab切换

jquery切换增加时间间隔