手风琴jQuery案例

此案例为手风琴jQuery案例,即是列表缩放使用jQuery方法使用点击事件完成此案例,以下将开始此次学习;

建立案例所需要的元素

  <ul class="menu">

        <li>

            <a href="#" class="level1">手机</a>

            <ul class="current">

                <li><a href="#">iPhone X 256G</a></li>

                <li><a href="#">红米4A 全网通</a></li>

                <li><a href="#">HUAWEI Mate10</a></li>

                <li><a href="#">vivo X20A 4GB</a></li>

            </ul>

        </li>

        <li>

            <a href="#" class="level1">笔记本</a>

            <ul>

                <li><a href="#">MacBook Pro</a></li>

                <li><a href="#">ThinkPad</a></li>

                <li><a href="#">外星人(Alienware)</a></li>

                <li><a href="#">惠普(HP)薄锐ENVY</a></li>

            </ul>

        </li>

        <li>

            <a href="#" class="level1">电视</a>

            <ul>

                <li><a href="#">海信(hisense)</a></li>

                <li><a href="#">长虹(CHANGHONG)</a></li>

                <li><a href="#">TCL彩电L65E5800A</a></li>

            </ul>

        </li>

        <li>

            <a href="#" class="level1">鞋子</a>

            <ul>

                <li><a href="#">新百伦</a></li>

                <li><a href="#">adidas</a></li>

                <li><a href="#">特步</a></li>

                <li><a href="#">安踏</a></li>

            </ul>

        </li>

        <li>

            <a href="#" class="level1">玩具</a>

            <ul>

                <li><a href="#">乐高</a></li>

                <li><a href="#">费雪</a></li>

                <li><a href="#">铭塔</a></li>

                <li><a href="#">贝恩斯</a></li>

            </ul>

        </li>

</ul>

设置元素在此案例中显示的属性

 <style type="text/css">

        body{

            font-family:'Microsoft Yahei';

        }

        body,ul{

            margin:0px;

            padding:0px;

        }

        ul{

            list-style:none;

        }

        .menu{

            width:200px;

            margin:20px auto 0;

        }

            .menu .level1,.menu li ul a{

                display:block;

                width:200px;

                height:30px;

                line-height:30px;

                text-decoration:none;

                background-color:#3366cc;

                color:#fff;

                font-size:16px;

                text-indent:10px;

            }

            .menu .level1{

                border-bottom:1px solid #afc6f6;

            }

            .menu li ul a{

                font-size:14px;

                text-indent:20px;

                background-color:#7aa1ef;

            }

            .menu li ul li{

                border-bottom:1px solid #afc6f6;

            }

            .menu li ul{

                display:none;

            }

                .menu li ul.current{

                    display:block;

                }

                .menu li ul li a:hover{

                    background-color:#f6b544;

                }

    </style>

带入jQuery插件

<script src="~/Content/js/jquery-3.2.1.min.js"></script>

首先获取a标签 jquery元素再获取 a标签下面的ul 的jquery 元素然后点击 a标签以后 改变ul标签的显示最后改变其他的ul标签的隐藏

    <script type="text/javascript">

        $(function() {

            1.获取a标签 jquery元素

            var$a = $('.level1')

            2.获取 a标签下面的ul 的jquery 元素

            $a.click(function() {

            3.点击 a标签以后 改变ul标签的显示

            4.改变其他的ul标签的隐藏

               ul-父级>li-兄弟>li-子标签>ul

$(this).next().slideToggle().parent().siblings().children('ul').slideUp(300)

            })

   })

总结:此案例采用的开发工具是Visual Studio 2019,主要使用到的方法是jQuery方法的点击事件,注意:这种动画会有粘黏的效果:上一次没有播放完成导致下一次的上下一起播放$(this).next().slideToggle().parent().siblings().children('ul').slideUp();stop()用来去除上一次播放;这是我所学到的案例,所以我要分享给你们,希望可以帮助到你们。以上就是我的分享,新手上道,请多多指教。如果有更好的方法或不懂得地方欢迎在评论区教导和提问喔!

 


版权声明:本文为Rowse原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。