【问题标题】:Dropdown menu wont stay open bootstrap 4下拉菜单不会保持打开引导程序 4
【发布时间】:2017-05-26 13:51:37
【问题描述】:

我目前的下拉菜单有问题。我希望它们仅在单击下拉菜单时打开/关闭,而不是列表项或正文中的任何其他位置。

这是我遇到问题的代码:

 <main>
    <div id="wrapper">
        <div id="sidebar-wrapper">
            <ul class="sidebar-nav">
                <li>
                    <span style="height:50px" />
                </li>
                <li class="dropdown" id="mi1">
                    <a class="menu-toggle" href="#" class="dropdown-toggle" data-toggle="dropdown">Service Provision<span class="fa fa-chevron-down pull-right sideMenuChevrons"></span></a>
                    <ul class="sideDropDown dropdown-menu" role="menu">
                        <li><a href="#">Service Provision<span class="fa fa-external-link pull-right newTabIcon" onclick="window.open('#')"></span></a></li>
                        <li><a href="#">Automation Requests<span class="fa fa-external-link pull-right newTabIcon" onclick="window.open('#')"></span></a></li>
                    </ul>
                </li>
                <li class="dropdown">
                    <a class="menu-toggle" href="#" class="dropdown-toggle" data-toggle="dropdown">NMC<span class="fa fa-chevron-down pull-right sideMenuChevrons"></span></a>
                    <ul class="sideDropDown dropdown-menu" role="menu">
                        <li><a href="#">Customers<span class="fa fa-external-link pull-right newTabIcon" onclick="window.open('#')"></span></a></li>
                        <li><a href="#">Contractors<span class="fa fa-external-link pull-right newTabIcon" onclick="window.open('#')"></span></a></li>
                        <li><a href="#">Suppliers<span class="fa fa-external-link pull-right newTabIcon" onclick="window.open('#')"></span></a></li>
                    </ul>
                </li>
                <li class="dropdown">
                    <a class="menu-toggle" href="#" class="dropdown-toggle" data-toggle="dropdown">Site Access<span class="fa fa-chevron-down pull-right sideMenuChevrons"></span></a>
                    <ul class="sideDropDown dropdown-menu" role="menu">
                        <li><a href="#">Site Access<span class="fa fa-external-link pull-right newTabIcon" onclick="window.open('#')"></span></a></li>
                        <li><a href="#">Key Issue<span class="fa fa-external-link pull-right newTabIcon" onclick="window.open('#')"></span></a></li>
                    </ul>
            </ul>
            <div class="dropup">
                <a id="menu-toggle-reversed" href="#" class="dropdown-toggle dropup" data-toggle="dropdown"><i id="adminIconPadding" class="fa fa-user-md"></i>Admin<span class="fa fa-chevron-up pull-right sideMenuChevronsDropUp"></span></a>
                <ul id="adminDropup" class="dropdown-menu" role="menu">
                    <li><a href="#">Settings<span class="fa fa-external-link pull-right newTabIcon" onclick="window.open('#')"></span></a></li>
                </ul>
            </div>
        </div>

我尝试将内联 javascript 添加到“stopPropagation”,但这导致下拉菜单根本无法打开。

这是左侧导航栏中下拉菜单发生的情况的粗略 jsfiddle:https://jsfiddle.net/jr_iridium/aqLa77ax/

我对引导程序比较陌生,所以如果我犯了任何错误,请告诉我。

提前致谢。

【问题讨论】:

  • 创建一个显示问题的工作演示
  • @Dekel JSFiddle 现已添加到原始帖子中。
  • 您是在谈论您的侧边栏菜单吗?还是导航栏菜单?
  • @threeFatCat 如果可能的话两者都有,但我目前的主要关注点是侧边栏。

标签: javascript html twitter-bootstrap bootstrap-4 twitter-bootstrap-4


【解决方案1】:

这是我的答案,经过长时间的测试,因为我曾经使用 Boostrap 3。删除data-toggle="dropdown" 是在外部点击期间删除自动关闭的唯一方法。与here 相关,但您的问题是 Bootstrap 4

试试这个:

https://jsfiddle.net/rigz/pdc4un6L/5/

如果小提琴不起作用,请告诉我,我在小提琴中遇到了奇怪的问题,因为我在公司代理下发布这个:P

【讨论】:

  • 抱歉回复晚了,长周末!我试过小提琴,下拉菜单根本打不开?
  • 您可以尝试删除每个下拉列表中的toggle="dropdown" 并使用我在 jsfiddle 中的 jquery 吗?它在我的本地运行良好,这就是为什么当我发布这个答案时我感到很奇怪。
  • 或者您可以复制并粘贴我在小提琴中的代码,然后确保您拥有正确的引导程序和 jquery 库和 css。我只是想确认它是否根本不起作用,如果没关系。谢谢
  • 这非常适合在单击正文时保持下拉菜单打开,非常感谢!现在我唯一的问题是单击列表项时下拉菜单关闭。
  • 我更新了我的小提琴。请检查。 :) 很高兴为您提供帮助。
猜你喜欢
  • 2021-06-10
  • 2019-01-11
  • 1970-01-01
  • 1970-01-01
  • 2018-03-18
  • 1970-01-01
  • 2013-03-09
  • 2016-05-16
相关资源
最近更新 更多