ul 收缩卡 实现原理

这里写图片描述

1.html部分

<ul class="ul">
    <li class="bg">
        <div class="bg1">
            <img src="../img/ident/icon_renshe@2x.png" alt="">
            <p>人社</p>
        </div>
        <ul class='list'>
            <li>无锡公积金</li>
        </ul>
    </li>
    <li class="bg">
        <div class="bg1">
            <img src="../img/ident/icon_police@2x.png" alt="">
            <p>公安</p>
        </div>
        <ul class='list'>
            <li>四川省公安厅</li>
            <li>成都市公安局</li>
        </ul>
    </li>
    <li class="bg">
        <div class="bg1">
            <img src="../img/ident/icon_government@2x.png" alt="">
            <p>政务</p>
        </div>
        <ul class='list'>
            <li>深圳标准院</li>
            <li>佛山禅城</li>
            <li>四川政府政务中心</li>
            <li>宁夏自治区便民服务平台</li>  
        </ul>
    </li>
  </ul>

2.js部分

  $(document).click(function(e){  
        var target = $(event.target);           
        var noRes = target.parents('.list');
        if ( noRes.length ) {
            return;
        }
        var parent = target.parents('.bg');
        var has = false;
        if ( $(parent).hasClass('active') ){
            has = true;
        }
        $('.bg').removeClass('active');
        if ( parent.length !== 0 && !has ) {
            $(parent).addClass('active');
        }
    })  


    //法二:

    $('.ul li').click(function(e){  
        var target = $(event.target);                
        var parent = target.parents('.bg');
        var has = false;
        if ( $(parent).hasClass('active') ){
            has = true;
        }
        $('.bg').removeClass('active');
        if (parent.length !== 0 &&  !has ) {
            $(parent).addClass('active');
        }
    })  





3.css部分

.bg{width:6rem;background-color: #2671d8;margin:.1rem auto;}
.bg1{width:100%;height:1rem;display: flex;align-items: center;}
.bg1 img{width: .7rem;height: .7rem;margin-left: .2rem;}
.bg1 p{font-size: .3rem;color: white;margin-left: .2rem;}

.bg ul{width:5.96rem;border: .02rem solid #2671d8;display: none;padding: .2rem 0;background-color: white;}
.bg ul li{list-style: disc;color: #2671d8;width: 5rem;margin: auto;padding: .1rem 0;font-size: .25rem;}
.active>.list {
    display: block;   //关键
}
.ul{margin-bottom: 1rem;}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值