javascript - 如何从外部链接打开 Bootstrap 3 选项卡?

标签 javascript jquery twitter-bootstrap-3 bootstrap-tabs

我想创建一个链接,该链接将定位到我网站的另一个页面中的特定选项卡。

我尝试创建这样的链接:www.example.com/test.html#tab2,但它始终针对第一个选项卡(我猜是带有 show class 的选项卡)。

index.html

<a href="test.html#menu-catalog">link for catalog</a>

text.html

<ul class="nav nav-tabs">
  <li id="homeTab" class="active"><a data-toggle="tab" href="#home" aria-expanded="true">menu 1</a></li>
  <li id="menu1Tab"><a data-toggle="tab" href="#menu1">menu 2</a></li>
  <li id="menu2Tab"><a data-toggle="tab" href="#menu-catalog">menu 3</a></li>
  <li id="menu3Tab"><a data-toggle="tab" href="#menu3">menu 4</a></li>
</ul>

<div class="tab-content">
  <div id="home" class="tab-pane fade in active">  
    ...
  </div>
  <div id="menu1" class="tab-pane fade">
   ....
  </div>
  <div id="menu-catalog" class="tab-pane fade">
    ...
  </div>
  <div id="menu3" class="tab-pane fade">
    ...
  </div>
</div>

当我单击从 index.html 到目标的链接并打开具有正确 ID 的选项卡时。

最佳答案

如果您使用 bootstrap + jquery 设置,则可以通过以下方式轻松实现此行为:

$(() => {
  const {
    hash
  } = document.location;
  if (!hash) return false;
  $(`.nav.nav-tabs [href="${hash}"]`).tab('show');
});

关于javascript - 如何从外部链接打开 Bootstrap 3 选项卡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57657844/

相关文章:

javascript - 我怎样才能只使用新设置的状态?

jQuery 未捕获异常 : syntax error, 无法识别的表达式 [tabindex ="something"]

javascript - .prop() VS .val() .使用 jQuery 设置输入文本值

html - 如何创建不占据整个屏幕的导航栏折叠?

css - 香脆形式 : add css class for one of the inputs

javascript - 日期范围选择器为 24 小时范围创建错误的时间值

javascript - 如何从 knockout.js 中的组件订阅父模型中的 observable

javascript - 菜单应该隐藏 onmouseout 但它隐藏 onmouseover

javascript - 如何在删除和添加类后重新启用点击功能?

html - Bootstrap 缩略图在移动设备上太小