【问题标题】:How to expand only one li on click?如何在点击时仅展开一里?
【发布时间】:2016-04-18 04:39:27
【问题描述】:

所以我想要做的是当用户点击其中一项来展开它时。但这只是扩展了那个li,以显示它下面的数据。 这是我的小提琴:https://jsfiddle.net/LLkaj4h0/ 有什么建议吗?

<div class="col-md-12 col-sm-12">
            <div class="row">
                <ul class="list-of-consalting">
                    <li>    
                    <div class="dropdown">
                        <button class="dropdown-toggle" type="button" data-toggle="collapse" style="background-color:transparent;border:none;" data-target="#finansijskimenadjment">
                        <span>Finansijski menadžment</span><span style="color:#c20c0c;margin-left:5px;" class="fa fa-angle-down"></span>
                        </button>
                        <div id="finansijskimenadjment" class="collapse ">
                            <ul class="expand-details">
                            <li>posebni konsalting po zahtjevima manje složenosti, po ugovoru</li>
                            <li>posebni konsalting projekti po zahtevima veće složenosti, po ugovoru</li>
                        </ul>
                        </div>
                    </div>
                </li>
                    <li>    
                    <div class="dropdown">
                        <button class="dropdown-toggle" type="button" data-toggle="collapse" style="background-color:transparent;border:none;" data-target="#racunovodstvenosavjetovanje">
                        <span>Računovodstveno savjetovanje</span><span style="color:#c20c0c;margin-left:5px;" class="fa fa-angle-down"></span>
                        </button>
                        <div id="racunovodstvenosavjetovanje" class="collapse ">
                            <ul class="expand-details">
                            <li>posebni konsalting po zahtjevima manje složenosti, po ugovoru</li>
                            <li>posebni konsalting projekti po zahtevima veće složenosti, po ugovoru</li>
                        </ul>
                        </div>
                    </div>
                </li>
                    <li>    
                    <div class="dropdown">
                        <button class="dropdown-toggle" type="button" data-toggle="collapse" style="background-color:transparent;border:none;" data-target="#poreznosavjetovanje">
                        <span>Porezno savjetovanje</span><span style="color:#c20c0c;margin-left:5px;" class="fa fa-angle-down"></span>
                        </button>
                        <div id="poreznosavjetovanje" class="collapse ">
                            <ul class="expand-details">
                            <li>posebni konsalting po zahtjevima manje složenosti, po ugovoru</li>
                            <li>posebni konsalting projekti po zahtevima veće složenosti, po ugovoru</li>
                        </ul>
                        </div>
                    </div>
                </li>
                    <li>    
                    <div class="dropdown">
                        <button class="dropdown-toggle" type="button" data-toggle="collapse" style="background-color:transparent;border:none;" data-target="#javnefinansije">
                        <span>Javne finansije - budžet i trezor</span><span style="color:#c20c0c;margin-left:5px;" class="fa fa-angle-down"></span>
                        </button>
                        <div id="javnefinansije" class="collapse">
                            <ul class="expand-details">
                            <li>posebni konsalting po zahtjevima manje složenosti, po ugovoru</li>
                            <li>posebni konsalting projekti po zahtevima veće složenosti, po ugovoru</li>
                        </ul>
                        </div>
                    </div>
                </li>
                    <li>    
                    <div class="dropdown">
                        <button class="dropdown-toggle" type="button" data-toggle="collapse" style="background-color:transparent;border:none;" data-target="#korporativnoposlovnopravo">
                        <span>Korporativno - poslovno pravo</span><span style="color:#c20c0c;margin-left:5px;" class="fa fa-angle-down"></span>
                        </button>
                        <div id="korporativnoposlovnopravo" class="collapse">
                            <ul class="expand-details">
                            <li>posebni konsalting po zahtjevima manje složenosti, po ugovoru</li>
                            <li>posebni konsalting projekti po zahtevima veće složenosti, po ugovoru</li>
                        </ul>
                        </div>
                    </div>
                </li>
                    <li>    
                    <div class="dropdown">
                        <button class="dropdown-toggle" type="button" data-toggle="collapse" style="background-color:transparent;border:none;" data-target="#eufondovi">
                        <span>EU fondovi</span><span style="color:#c20c0c;margin-left:5px;" class="fa fa-angle-down"></span>
                        </button>
                        <div id="#eufondovi" class="collapse">
                            <ul class="expand-details">
                            <li>posebni konsalting po zahtjevima manje složenosti, po ugovoru</li>
                            <li>posebni konsalting projekti po zahtevima veće složenosti, po ugovoru</li>
                        </ul>
                        </div>
                    </div>
                </li>
                    <li>    
                    <div class="dropdown">
                        <button class="dropdown-toggle" type="button" data-toggle="collapse" style="background-color:transparent;border:none;" data-target="#usaglasavanjezakonodavstva">
                        <span>Usaglašavanje zakonodavstva sa pravom Evropske unije</span><span style="color:#c20c0c;margin-left:5px;" class="fa fa-angle-down"></span>
                        </button>
                        <div id="usaglasavanjezakonodavstva" class="collapse">
                            <ul class="expand-details">
                            <li>posebni konsalting po zahtjevima manje složenosti, po ugovoru</li>
                            <li>posebni konsalting projekti po zahtevima veće složenosti, po ugovoru</li>
                        </ul>
                        </div>
                    </div>
                </li>
                </ul>
            </div>
        </div>

【问题讨论】:

    标签: html css twitter-bootstrap


    【解决方案1】:

    您只需在bootstrap.min.js 之前添加jquery.min.js。 bootstrap 已经内置了这个功能。

    间距问题是因为ul.list-of-consalting li 选择器中的float:left 属性。我已在此选择器中更新了 width 属性并将 float:right 属性添加到 li:nth-child(even) 选择器。

    更新的 CSS:

    ul.list-of-consalting > li {
        list-style: decimal;
        font-family: 'PT_Sans_Caption_Bold';
        font-size: 14px;
        color: #282828;
        float: left;
        width: calc(50% - 10px);
        list-style-position: inside;
        border-bottom: 1px solid #ccc;
        margin-left: 10px;
        padding: 10px;
    }
    
    ul.list-of-consalting > li:nth-child(even){
        float: right;
    }
    

    jsfiddle link

    jsfiddle 链接中的 css 更新行号 [1371-1386]

    【讨论】:

    • 我知道..tnx ...但我的问题是当我点击右侧菜单时,它也会在左侧添加高度,我想避免这种情况...有什么建议吗?
    • @None 我已经更新了我的答案,请检查。希望这对你有用。
    • 就是这样...tnx很多:)
    • 再问一个问题...我需要做什么才能在点击时仅扩展一里?我尝试使用 data-parent 但它不起作用
    • @None 是的,我也知道使用data-parent 属性来实现这一点。这是关于类似问题的帖子stackoverflow.com/questions/13665800/…
    【解决方案2】:

    你可以为你所有的按钮附加一个点击事件来更新下一个div的类

    $(".dropdown-toggle").on('click', function(){
        $(this).find('+ div').toggleClass('collapse');
      })
    

    最好的解决方案是不选择所有下一个div,而是选择像这样的下一个类

    $(this).find('+ .collapse-container').toggleClass('collapse');
    

    https://jsfiddle.net/LLkaj4h0/2/

    【讨论】:

    • @kevpccs 当我打开右侧菜单时,它会在左侧菜单上增加我的高度...是否可以避免这种情况?
    【解决方案3】:

    一种方法:

    $('.dropdown-toggle').on('click', function() {
        $($(this).data('target')).toggleClass('collapse');
    });
    

    检查这个FIDDLE

    .dropdown-toggle 按钮上附加一个点击事件处理程序,并从data-target 属性中获取目标面板的id,然后找到此目标元素并切换其collapse 类以显示和隐藏面板。

    【讨论】:

    • 当我在右侧展开菜单时,它也会在左侧展开菜单...它增加了高度...是否可以避免这种情况
    猜你喜欢
    • 2015-01-02
    • 1970-01-01
    • 2021-10-24
    • 1970-01-01
    • 1970-01-01
    • 2023-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多