twitter-bootstrap - Twitter 的带有点击事件的 Bootstrap 下拉菜单

标签 twitter-bootstrap

我使用的是 twitter bootstrap“下拉菜单”,而不是带有 html 标记的“下拉菜单”多级菜单。

   <ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu">
      <li><a tabindex="-1" href="#">Action</a></li>
      <li><a tabindex="-1" href="#">Another action</a>
          <ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu">
              <li><a tabindex="-1" href="#">Action</a></li>
              <li><a tabindex="-1" href="#">Another action</a></li>
              <li><a tabindex="-1" href="#">Something else here</a>
                  <ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu">
                     <li><a tabindex="-1" href="#">Action</a></li>
                     <li><a tabindex="-1" href="#">Another action</a></li>

                 </ul>
              </li>
              <li class="divider"></li>
              <li><a tabindex="-1" href="#">Separated link</a></li>
          </ul>
      </li>
      <li><a tabindex="-1" href="#">Something else here</a>
          <ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu">
              <li><a tabindex="-1" href="#">Action</a></li>
              <li><a tabindex="-1" href="#">Another action</a></li>
              <li><a tabindex="-1" href="#">Something else here</a></li>
              <li class="divider"></li>
              <li><a tabindex="-1" href="#">Separated link</a></li>
          </ul>
      </li>
      <li class="divider"></li>
      <li><a tabindex="-1" href="#">Separated link</a></li>
  </ul>

我有一个问题。我可以添加点击事件来显示子菜单吗?

最佳答案

子菜单由 css 显示。因此,首先禁用 CSS(悬停)并向菜单项添加单击事件。

html 示例:

<div class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Show menu</a>
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu">
  <li><a tabindex="-1" href="#">Action</a></li>
  <li><a tabindex="-1" href="#">Another action</a></li>
   <li class="dropdown-submenu">
    <a tabindex="-1" href="#">More options</a>
    <ul class="dropdown-menu">
        <li><a tabindex="-1" href="#">Action</a></li>
        <li><a tabindex="-1" href="#">Another action</a></li>
    </ul>
  </li>
  <li class="divider"></li>
  <li><a tabindex="-1" href="#">Separated link</a></li>
</ul>
</div>

禁用 CSS:

.dropdown-submenu:hover > .dropdown-menu {
  display: none;
}

通过javascript触发点击:

$('.dropdown-submenu').click(function(){
  $('.dropdown-submenu > .dropdown-menu').css('display','block');
  return false;
});

示例:http://bootply.com/66088

注意,当您有多个子菜单时,请为每个子菜单指定自己的类别

关于twitter-bootstrap - Twitter 的带有点击事件的 Bootstrap 下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17386993/

相关文章:

html - 如何更改 Bootstrap 中小屏幕上的导航栏切换按钮位置

jquery - 在 Bootstrap 的模态窗口中使用嵌套列

twitter-bootstrap - 使用 Twitter Bootstrap 进行括号显示

c# - 如何做一个由数据库填充的 Bootstrap Accordion ?

html - 在 Bootstrap 中设置缩进的 h4 元素的样式

javascript - Bootstrap 不适用于简单的 html 页面

css - 使用 Bootstrap + LESS Mixins 的语义网格 – 如何?

twitter-bootstrap - 为什么我不使用多个 col 大小?

javascript - Bootstrap Carousel 相同图像大小(异常偏移)

twitter-bootstrap - 我可以使用 Bootstrap 将边框添加到表单中吗?