jQuery淘宝服饰精品图片切换

<!--@description-->
<!--@author beyondx-->
<!--@date Created in 2022/08/01/ 13:41-->
<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style type="text/css">
        * {
            margin: 0;
            padding: 0;
            font-size: 12px;
        }
        ul {
            list-style: none;
        }
        a {
            text-decoration: none;
        }

        .wrapper {
            width: 298px;
            height: 248px;
            margin: 100px auto 0;
            border: 1px solid pink;
            overflow: hidden;
        }
        #left,#center,#right{
            float: left;
        }
        #left li , #right li{
            background: url(images/lili.jpg) repeat-x;
        }
        #left li a,#right li a{
            display: block;
            width: 48px;
            height: 27px;
            border-bottom: 1px solid pink;
            line-height: 27px;
            text-align: center;
            color: black;
        }
        #left li a:hover,#right li a:hover{
            background-image: url(images/abg.gif);
        }
        #center {
            border-left: 1px solid pink;
            border-right: 1px solid pink;
        }
    </style>
</head>
<body>
<div class="wrapper">

    <ul id="left">
        <li><a href="#">女靴</a></li>
        <li><a href="#">雪地靴</a></li>
        <li><a href="#">冬裙</a></li>
        <li><a href="#">呢大衣</a></li>
        <li><a href="#">毛衣</a></li>
        <li><a href="#">棉服</a></li>
        <li><a href="#">女裤</a></li>
        <li><a href="#">羽绒服</a></li>
        <li><a href="#">牛仔裤</a></li>
    </ul>
    <ul id="center">
        <li><a href="#"><img src="images/女靴.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/雪地靴.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/冬裙.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/呢大衣.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/毛衣.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/棉服.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/女裤.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/羽绒服.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/牛仔裤.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/女包.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/男包.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/登山鞋.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/皮带.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/围巾.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/皮衣.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/男毛衣.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/男棉服.jpg" width="200" height="250"/></a></li>
        <li><a href="#"><img src="images/男靴.jpg" width="200" height="250" /></a></li>
    </ul>
    <ul id="right">
        <li><a href="#">女包</a></li>
        <li><a href="#">男包</a></li>
        <li><a href="#">登山鞋</a></li>
        <li><a href="#">皮带</a></li>
        <li><a href="#">围巾</a></li>
        <li><a href="#">皮衣</a></li>
        <li><a href="#">男毛衣</a></li>
        <li><a href="#">男棉服</a></li>
        <li><a href="#">男靴</a></li>
    </ul>

    <script src="jquery-1.12.4.js"></script>
    <script>
        $(function () {
            //需求1:给左边的li标签们设置鼠标移入事件,让中间索引对应的li显示,其他的li隐藏.
            //需求2:给右边的li标签们设置鼠标移入事件,让中间索引对应的li显示,其他的li隐藏.

            // 需求1
            $('#left > li').mouseenter(function () {
                // 获取当前 鼠标移入的 这个li标签 的 索引
                let index1 = $(this).index();
                // console.log(index1); // index1索引, 表示在 兄弟间的排行

                // $('#center > li:eq('+index1+')'); // 字符串的拼接
                $('#center > li').eq(index1).show().siblings('li').hide();
            });

            // 需求2
            $('#right > li').mouseenter(function () {
                // 获取当前 鼠标移入的这个li标签 的 索引

                var index2 = $(this).index();
                index2 += 9; // 9不要写死, 9是左边 li标签的个数
                // 让中间索引 对应的 li显示, 其他 li隐藏
                $('#center > li').eq(index2).show().siblings('li').hide();
            });

            
            // /**
            //  * 2侧, 分类, 分开处理
            //  * 索引
            //  */
            //
            // /**
            //  * 先处理左边
            //  * 一下子处理不掉, 就分解
            //  */
            // $('.wrapper > #left > li').mouseenter(function () {
            //     let index1 = $(this).index();
            //
            //     // 获取 center中的 li
            //     // console.log( $('.wrapper > #center > li')[index1] ); // output: <li></li>
            //     // output: <li></li> dom对象 不能使用show(), 需要转成 jquery对象
            //     $($('.wrapper > #center > li')[index1]).show().siblings('li').hide();
            //
            // });
            //
            // /**
            //  * 再处理右边的
            //  */
            // $('.wrapper > #right > li').mouseenter(function () {
            //     let index2 = $(this).index() + 9;
            //
            //     $($('.wrapper > #center > li')[index2]).show().siblings('li').hide();
            // });

            //需求1:

            //需求2:

            //思考题:
            //为什么是给li标签设置鼠标移入事件,而不是给a标签设置鼠标移入事件?
            //因为给a标签设置的话,不能拿到正确的索引.

            // $('#left a').mouseenter(function () {
            //     let index0 = $(this).index();
            //     console.log(index0); // index0索引, 全部为0; a标签 没有 兄弟
            // });
        });
    </script>
</div>
</body>
</html>

posted on 2022-08-01 14:34  beyondx  阅读(16)  评论(0编辑  收藏  举报

导航