javascript - JQ 点击隐藏显示
伊谢尔伦
伊谢尔伦 2017-04-10 17:38:29
[JavaScript讨论组]
<p class="p1">
    <ul>
    </ul>
    <p class='p2'></p>
</p>
<p class="p1">
    <ul>
    </ul>
    <p class='p2'></p>
</p>

点击p1,让p2显示,点下一个p1,让第一个p2隐藏,第二个p2显示,
怎么实现啊

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(5)
天蓬老师

HTML:

<p class="p1">
    <ul></ul>
    <p class='p2'></p>
</p>
<p class="p1">
    <ul></ul>
    <p class='p2'></p>
</p>

CSS:

.p1 {
    width: 50px;
    height: 50px;
    background: yellow;
}
.p2 {
    width: 40px;
    height: 40px;
    background: red;
    display: none;
}

jQuery:

    $('.p1').click(function () {
       $(this).find('.p2').show()
               .end()
               .siblings('.p1').find('.p2').hide();
    });

仅仅想装B的用链式代码,写法可能有点拖沓。见谅。支持 scort 的写法。

高洛峰
$('.p1').click(function(){
    $('.p2').hide();
    $(this).find('.p2').show();
});
大家讲道理
<!DOCTYPE html>
<html>
<head>
    <title>test</title>
    <meta charset="utf-8">
    <script type="text/javascript" src="http://cdn.bootcss.com/jquery/2.1.4/jquery.js"></script>
    <style>
        .p1{
            width: 200px;height: 200px;background: gold;
        }
        .p2{
            width: 100px;height: 100px;background: red;
        }
    </style>
</head>
<body>
<p>
    <p class="p1" id="fisrstp1">
        <p class='p2' id="firstp2">p2</p>
    </p>
    <br><br><br><br><br>
    <p class="p1" id="secondp1">
        <p class='p2' id="secondp2">p2</p>
    </p>
</p>
<script type="text/javascript">
    $(function(){
        $('#fisrstp1').click(function () {
            $('.p2').show();
        });
        $('#secondp1').click(function () {
            $('#firstp2').hide();
            $('#secondp2').show();
        });
    })

</script>
</body>
</html>

不知道是不是你要的

PHPz

如果元素少的话,加个id写动作就是,没必要用同一个class。

迷茫
    <p class="p1 active">
        我是p1
        <p class="p2" style="display: block;">我是p2</p>
    </p>
    <p class="p1">
        我是p1
        <p class="p2" style="display: none;">我是p2</p>
    </p>
    <script type="text/javascript">
        $(function(){
            $(document).on('click','.p1',function(){
                /*逻辑就是给当前显示的p1加上active,并展示当前点击的p1下的p2*/

                /*当然也可以直接使用css规定.p.active>.p2{display:block;}*/

                //检测点击的是否已经显示
                if(!$(this).hasClass('active')){
                    //点击的p1没有active
                    //去掉active并隐藏p2
                    $('.active').removeClass('active').find('.p2').hide();

                    //激活当前点击p1
                    $(this).addClass('active').find('.p2').show();
                };
            });
        }());
    </script>

写好了总要贴上来

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号