如何在悬停时制作Bootstrap的下拉菜单?

时间:2012-11-06 03:48:19

标签: drop-down-menu twitter-bootstrap

如何将twitter bootstrap的菜单下拉列表悬停而不是点击?

5 个答案:

答案 0 :(得分:14)

1.在鼠标悬停上隐藏下拉菜单

$(document).ready(function() {
    $('.nav li.dropdown').hover(function() {
        $(this).addClass('open');
    }, function() {
        $(this).removeClass('open');
    });
});

2.在点击上隐藏下拉菜单

$(document).ready(function() {
    $('.nav li.dropdown').hover(function() {
        $(this).addClass('open');
    });
});

http://jsfiddle.net/7yMsQ/1/

答案 1 :(得分:5)

尽管How to make twitter bootstrap menu dropdown on hover rather than click已被大量推崇,但使用较新版本的Bootstrap,无需破解它。

http://cameronspear.com/blog/twitter-bootstrap-dropdown-on-hover-plugin/是现有dropdown.js的替代品,可让您在悬停时启用。无需修改CSS。

答案 2 :(得分:5)

这是我正在使用的一个函数,用于让导航栏下拉列表在悬停时向下滑动,而不是仅仅弹出

$('.navbar .dropdown').hover(function() {
  $(this).find('.dropdown-menu').first().stop(true, true).delay(250).slideDown();
}, function() {
  $(this).find('.dropdown-menu').first().stop(true, true).delay(100).slideUp()
});

答案 3 :(得分:2)

您只需使用css即可。如果按钮下拉。

   <div class="btn-group btn-hover-group">
      <a href="#" id="selected" class="btn btn-default editor-submit">Action 1</a>
      <a href="#" class="btn btn-default dropdown-toggle"></a>
      <ul class="dropdown-menu pull-right">
        <li><a href="#" id="all" class="editor-submit">Action 2</a></li>
        <li><a href="#" id="matching" class="editor-submit">Action 3</a></li>
      </ul>
    </div>

data-toggle="dropdown"

中删除了<a href="#" class="btn btn-default dropdown-toggle"></a>
.btn-hover-group > a:hover ~ ul{
 display:block;
}
.btn-hover-group > .dropdown-menu:hover{
 display:block;
}

我希望这足以满足你的目的。

答案 4 :(得分:1)

你可以像这样使用bootstrap 4 ..

<div class="dropdown">
  <button class="dropbtn">Dropdown</button>
  <div class="dropdown-content">
    <a href="#">Link 1</a>
    <a href="#">Link 2</a>
    <a href="#">Link 3</a>
  </div>
</div>

然后定义类属性值follow..it应该工作

.dropbtn {
    background-color: #4CAF50;
    color: white;
    padding: 16px;
    font-size: 16px;
    border: none;
}

.dropdown {
    position: relative;
    display: inline-block;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f1f1f1;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
}

.dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}
.dropdown:hover .dropdown-content {display: block;}