如果有多个下拉列表,则Bootstrap 4 Nav Dropdown问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如果有多个下拉列表,则Bootstrap 4 Nav Dropdown问题相关的知识,希望对你有一定的参考价值。

的jsfiddle:http://jsbin.com/wamunoside/1/edit?html,output

jsfiddle

这是从Bootstrap 4 docs站点上给出的示例中获取的:只需在此处的第一个下拉列表中添加第二个下拉列表:https://v4-alpha.getbootstrap.com/components/navbar/#navbarNavDropdown

所以在jsfiddle中,这就是你如何导致这个问题:

1.)减小输出选项卡的宽度,使其显示移动菜单(991px或更低)

2.)您将看到两个“下拉链接”,单击顶部的一个扩展子菜单。

3.)点击当前展开的另一个“下拉链接”。

请注意,两个下拉列表现已关闭 - 应该已打开第二个下拉列表。

答案

最后问题是我的代码...我添加了以下如果event.type == "mouseleave",这似乎已经相当好地解决了问题,仍然不完美(对于桌面):

http://jsbin.com/yiyohatequ/edit?html,css,js,output

我基本上都在努力寻找最佳方式让下拉菜单显示在“悬停”桌面上,下拉菜单显示为“点击”平板电脑/手机。所以这就是我在第一时间编写这段代码的原因。

/* Prevent more than 1 dropdown showing up at once*/
$('.nav-link').hover(function (event) {
//breaks mobile if this fires on "mouseenter". so only fire on "mouseleave"
if (event.type == "mouseleave") {
    var hovered = this.nextElementSibling;//.dropdown-menu
    var navdropdowns = $('.dropdown-menu');
    navdropdowns.each(function (a, b) {
        if (hovered != b) {
            $(b).removeClass('show');
        }
    });
} 
})

以上是关于如果有多个下拉列表,则Bootstrap 4 Nav Dropdown问题的主要内容,如果未能解决你的问题,请参考以下文章

bootstrap selectpicker不使用angularjs动态数据加载下拉列表

从下拉列表中触发时,Bootstrap-4 模态不显示

Bootstrap 4 Navbar:右对齐下拉菜单在右侧打开:溢出[重复]

Bootstrap 4.1中悬停时的下拉菜单

Bootstrap 4打开多个导航栏下拉菜单,无需切换

Bootstrap 4 导航栏下拉菜单链接