Bootstrap JS Tab
Tab CSS 类
Tabs(选项卡)用于将内容分成不同的窗格,每个窗格一次只能查看一个。
有关 Tabs 的教程,请阅读我们的 Bootstrap Tabs/Pills 教程。
类 | 描述 | 示例 |
---|---|---|
.nav nav-tabs |
创建导航标签页 | 试一试 |
.nav nav-pills |
创建导航胶囊 | 试一试 |
.nav-item |
创建选项卡项 | 试一试 |
.nav-link |
为导航选项卡中的链接设置样式 | 试一试 |
.nav-justified |
使导航选项卡/胶囊的宽度与其父容器相等,屏幕宽度大于 768px 时生效。在较小的屏幕上,导航选项卡会堆叠显示 | 试一试 |
.tab-content |
与 .tab-pane 和 data-toggle="tab" 结合使用,使其成为可切换的选项卡 | 试一试 |
.tab-pane |
与 .tab-content 和 data-toggle="tab" 结合使用,使其成为可切换的选项卡 | 试一试 |
通过 data-* 属性
在每个选项卡上添加 data-toggle="tab"
,并为每个选项卡添加具有唯一 ID 的 .tab-pane
类,然后将它们包裹在 .tab-content
类中。
示例
<!-- Nav tabs -->
<ul class="nav nav-tabs">
<li class="nav-item">
<a class="nav-link active" data-toggle="tab" href="#home">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" href="#menu1">Menu 1</a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" href="#menu2">Menu 2</a>
</li>
</ul>
<!-- Tab panes -->
<div class="tab-content">
<div class="tab-pane active container" id="home">...</div>
<div class="tab-pane container" id="menu1">...</div>
<div class="tab-pane container" id="menu2">...</div>
</div>
自己动手试一试 »
通过 JavaScript
使用以下命令手动启用:
示例
// 选择所有选项卡
$('.nav-tabs a').click(function(){
$(this).tab('show');
})
// 按名称选择选项卡
$('.nav-tabs a[href="#home"]').tab('show')
// 选择第一个选项卡
$('.nav-tabs a:first').tab('show')
// 选择最后一个选项卡
$('.nav-tabs a:last').tab('show')
// 选择第四个选项卡(零基索引)
$('.nav-tabs li:eq(3) a').tab('show')
自己动手试一试 »
Tab 选项
无 |
Tab 方法
下表列出了所有可用的 tab 方法。
方法 | 描述 | 试一试 |
---|---|---|
.tab("show") | 显示该选项卡 | 试一试 |
Tab 事件
下表列出了所有可用的 tab 事件。
事件 | 描述 | 试一试 |
---|---|---|
show.bs.tab | 在选项卡即将显示时发生。 | 试一试 |
shown.bs.tab | 在选项卡完全显示后发生(在 CSS 过渡完成后) | 试一试 |
hide.bs.tab | 在选项卡即将隐藏时发生 | 试一试 |
hidden.bs.tab | 在选项卡完全隐藏后发生(在 CSS 过渡完成后) | 试一试 |
提示: 使用 jQuery 的 event.target 和 event.relatedTarget 来获取当前激活的选项卡和前一个激活的选项卡
示例
$('.nav-tabs a').on('shown.bs.tab', function(event){
var x = $(event.target).text(); // 当前激活的选项卡
var y = $(event.relatedTarget).text(); // 前一个选项卡
});
自己动手试一试 »