javascript - Bootstrap 的选项卡放置 - 如果选项卡元素之一具有下拉菜单,则它会在调整大小时中断

标签 javascript jquery twitter-bootstrap

当您使用nav-tabs时,如果一个元素(选项卡)有下拉菜单,并且您开始调整窗口大小,它一开始就可以正常工作,但是如果您拖动以使窗口再次变大,则项目下拉列表中的内容将与其他选项卡显示在同一行。从那一刻起,下拉菜单就变空了。无论您调整窗口大小,它都保持不变。从这里查看示例:jsfiddle

HTML

<ul class="nav nav-tabs">
  <li role="presentation" class="active"><a href="#">Tab 1</a></li>
  <li role="presentation"><a href="#">Tab 2</a></li>
  <li role="presentation"><a href="#">Tab 3</a></li>
  <li role="presentation"><a href="#">Tab 4</a></li>
  <li role="presentation"><a href="#">Tab 5</a></li>
  <li role="presentation"><a href="#">Tab 6</a></li>
  <li role="presentation" class="dropdown">
    <a class="dropdown-toggle" data-toggle="dropdown" href="#" role="button" aria-haspopup="true" aria-expanded="false">
      Dropdown Tab <span class="caret"></span>
    </a>
    <ul class="dropdown-menu">
        <li role="presentation"><a href="#">item 1</a></li>
        <li role="presentation"><a href="#">item 2</a></li>
    <li role="presentation"><a href="#">item 3</a></li>
    </ul>
  </li>
</ul>

有什么想法可以解决这个问题吗?我希望当元素在选项卡下拉菜单下移动时,下拉列表仍保持为下拉列表。

更新 带选项卡和不带选项卡的打印屏幕。正确的方法是使用 tabdrop,但它的工作方式存在一些问题。

带有 tabdrop
with tabdrop

没有 tabdrop
without tabdrop

最佳答案

这个问题已经问了两年了,但我会回答。

您的问题是您正在 HTML 中手动添加下拉列表。 TabDrop.JS 创建下拉列表的方式不会产生此问题。 在 TabDrop.JS 中,下拉列表被创建为导航选项卡的第一个元素,并出于充分的原因向右推,它始终附加到下拉列表或导航选项卡。由于您手动将下拉列表创建为最后一个元素,因此您遇到了此问题。 从 html 中删除下拉列表并正常添加所有元素作为导航项。 您还需要包含 popper.js 才能查看下拉内容。

HTML 应该是:

$('.nav-tabs').tabdrop()
<ul class="nav nav-tabs">
  <li role="presentation" class="active"><a href="#">Tab 1</a></li>
  <li role="presentation"><a href="#">Tab 2</a></li>
  <li role="presentation"><a href="#">Tab 3</a></li>
  <li role="presentation"><a href="#">Tab 4</a></li>
  <li role="presentation"><a href="#">Tab 5</a></li>
  <li role="presentation"><a href="#">Tab 6</a></li>
  <li role="presentation"><a href="#">item 1</a></li>
  <li role="presentation"><a href="#">item 2</a></li>
  <li role="presentation"><a href="#">item 3</a></li>
</ul>

关于javascript - Bootstrap 的选项卡放置 - 如果选项卡元素之一具有下拉菜单,则它会在调整大小时中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36886138/

相关文章:

javascript - 有效的 Anagram 空间复杂度

javascript - Jquery将php工作加载到div中但不加载到表单中

jquery - 固定页脚显示滚动条

mobile - Twitter Bootstrap 与 "Mobile First"

javascript - 如何用javascript浏览json内容?

javascript - 如何自动刷新div

javascript - jQuery FullCalendar 未在 Bootstrap 选项卡中呈现

html - 固定 div 相对于父 div 的位置为 'top'

javascript - JQuery 文本区域字符数

javascript - 禁用父 block 中的所有链接,但不禁用其子 block 之一中的所有链接