8.5.2 使用data-*属性切换标签页

8.5.2 使用data-*属性切换标签页

标签页的两种切换方式

与前面介绍的JS组件类似的是,Bootstrap的标签页同样支持两种切换方式。

  1. 使用data-*属性实现切换。
  2. 使用JS脚本实现切换。

如何使用data-*属性切换标签页

为了使用data-*属性实现切换,只要为导航组件导航链接指定如下两个属性即可。

  1. data-toggle:可将该属性指定为”tab"或”pill"字符串,其中前者表示普通标签页,后者表示胶囊式标签页。
  2. data-target:该属性指定该导航链接对应的标签页。该属性可以是各种CSS选择器,通常建议使用ID 选择器。对于使用超链接作为导航链接的情形,可使用超链接的href属性代替该属性。

程序示例

如下代码示范了如何使用data-*属性实现标签页的切换。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<!DOCTYPE html>
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title> 切换标签页 </title>
<link rel="stylesheet" href="../bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" href="../bootstrap/css/bootstrap-theme.min.css">
</head>

<body>
<div class="container">
<!-- 导航组件 -->
<ul class="nav nav-tabs">
<!-- data-toggle="tab"表示该点击可以触发标签页 -->
<!-- data-target="#java"指明要触发哪个标签页:触发id为java的标签页 -->
<li class="active"><a href="#" data-toggle="tab" data-target="#java">
疯狂Java讲义</a></li>
<li><a href="#" data-toggle="tab" data-target="#android">疯狂Android讲义</a></li>
<!-- 下拉菜单组件 -->
<li class="dropdown">
<!-- data-toggle="dropdown"表示该链接可以触发下拉菜单 -->
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true"
aria-expanded="false">前端图书
<span class="caret"></span>
</a>
<!-- 菜单 -->
<ul class="dropdown-menu">
<!-- data-toggle="tab"表示该链接可以触发标签页 -->
<li><a href="#" data-toggle="tab" data-target="#html">疯狂HTML 5讲义</a></li>
<li role="separator" class="divider"></li>
<li><a href="#" data-toggle="tab" data-target="#front">疯狂前端开发讲义</a></li>
</ul>
</li>
</ul>
<!-- 标签页内容面板 -->
<div class="tab-content">
<!-- 标签页 -->
<div class="tab-pane active" id="java">
<h3>疯狂Java讲义</h3>
<p>必读的Java学习经典,你懂的,不多说。</p>
</div>
<div class="tab-pane" id="android">
<h3>疯狂Android讲义</h3>
<p>最全面、最详细的Android学习图书,全面覆盖Android开发手册</p>
</div>
<div class="tab-pane" id="html">
<h3>疯狂HTML 5讲义</h3>
<p>全面、细致的前端开发基础图书,全面深入介绍HTML 5/CSS 3/JavaScript知识。</p>
</div>
<div class="tab-pane" id="front">
<h3>疯狂前端开发讲义</h3>
<p>前端开发的进阶图书,全面深入介绍jQuery/AngularJS/Bootstrap等框架。</p>
</div>
</div>
</div>
<script type="text/javascript" src="../jquery-3.1.1.js"></script>
<script type="text/javascript" src="../bootstrap/js/bootstrap.min.js"></script>
</body>

</html>

上面的代码为每个导航链接指定data-toggle="tab"属性,告诉Bootstrap该链接用于切换标签页,还为每个导航链接指定了data-target属性,告诉Bootstrap该链接用于打开哪个标签页。