Bootstrap - Tab Plugin
Registerkarten wurden im Kapitel Bootstrap-Navigationselemente eingeführt . Durch Kombinieren einiger Datenattribute können Sie auf einfache Weise eine Oberfläche mit Registerkarten erstellen. Mit diesem Plug-In können Sie durch Bereiche mit lokalen Inhalten in Registerkarten oder Pillen wechseln, sogar über Dropdown-Menüs.
Wenn Sie diese Plugin-Funktionalität einzeln einbinden möchten, benötigen Sie tab.js. Andernfalls können Sie , wie im Kapitel Übersicht über Bootstrap-Plugins erwähnt , bootstrap.js oder die minimierte Datei bootstrap.min.js einschließen .
Verwendung
Sie können Registerkarten auf zwei Arten aktivieren:
Via data attributes - Sie müssen hinzufügen data-toggle = "tab" oder data-toggle = "pill" zu den Ankern.
Hinzufügen der nav und nav-tabs Klassen auf die Registerkarte ulwendet das Styling der Registerkarte " Bootstrap" an , während Sie das hinzufügennav und nav-pillsKlassen werden Pillenstyling anwenden .
<ul class = "nav nav-tabs">
<li><a href = "#identifier" data-toggle = "tab">Home</a></li>
...
</ul>
Via JavaScript - Sie können Registerkarten mit Javscript wie folgt aktivieren. -
$('#myTab a').click(function (e) {
e.preventDefault()
$(this).tab('show')
})
Hier ist ein Beispiel für verschiedene Möglichkeiten, einzelne Registerkarten zu aktivieren:
// Select tab by name
$('#myTab a[href = "#profile"]').tab('show')
// Select first tab
$('#myTab a:first').tab('show')
// Select last tab
$('#myTab a:last').tab('show')
// Select third tab (0-indexed)
$('#myTab li:eq(2) a').tab('show')
Fade-Effekt
Fügen Sie hinzu, um einen Überblendungseffekt für Registerkarten zu erzielen .fade zu jedem .tab-pane. Das erste Registerkartenfenster muss ebenfalls vorhanden sein.in den anfänglichen Inhalt richtig einblenden -
<div class = "tab-content">
<div class = "tab-pane fade in active" id = "home">...</div>
<div class = "tab-pane fade" id = "svn">...</div>
<div class = "tab-pane fade" id = "ios">...</div>
<div class = "tab-pane fade" id = "java">...</div>
</div>
Beispiel
Ein Beispiel für ein Tab-Plugin mit Datenattributen und Fade-Effekt ist im folgenden Beispiel dargestellt:
<ul id = "myTab" class = "nav nav-tabs">
<li class = "active">
<a href = "#home" data-toggle = "tab">
Tutorial Point Home
</a>
</li>
<li><a href = "#ios" data-toggle = "tab">iOS</a></li>
<li class = "dropdown">
<a href = "#" id = "myTabDrop1" class = "dropdown-toggle" data-toggle = "dropdown">
Java
<b class = "caret"></b>
</a>
<ul class = "dropdown-menu" role = "menu" aria-labelledby = "myTabDrop1">
<li><a href = "#jmeter" tabindex = "-1" data-toggle = "tab">jmeter</a></li>
<li><a href = "#ejb" tabindex = "-1" data-toggle = "tab">ejb</a></li>
</ul>
</li>
</ul>
<div id = "myTabContent" class = "tab-content">
<div class = "tab-pane fade in active" id = "home">
<p>Tutorials Point is a place for beginners in all technical areas.
This website covers most of the latest technologies and explains each of
the technology with simple examples.</p>
</div>
<div class = "tab-pane fade" id = "ios">
<p>iOS is a mobile operating system developed and distributed
by Apple Inc. Originally released in 2007 for the iPhone, iPod Touch,
and Apple TV. iOS is derived from OS X, with which it shares the
Darwin foundation. iOS is Apple's mobile version of the OS X
operating system used on Apple computers.</p>
</div>
<div class = "tab-pane fade" id = "jmeter">
<p>jMeter is an Open Source testing software. It is 100% pure Java
application for load and performance testing.</p>
</div>
<div class = "tab-pane fade" id = "ejb">
<p>Enterprise Java Beans (EJB) is a development architecture for
building highly scalable and robust enterprise level applications to be
deployed on J2EE compliant Application Server such as JBOSS, Web Logic etc.</p>
</div>
</div>
Methoden
.$().tab- Diese Methode aktiviert ein Registerkartenelement und einen Inhaltscontainer. Tab sollte entweder a habendata-target oder ein href Targeting eines Containerknotens im DOM.
<ul class = "nav nav-tabs" id = "myTab">
<li class = "active"><a href = "#identifier" data-toggle = "tab">Home</a></li>
.....
</ul>
<div class = "tab-content">
<div class = "tab-pane active" id = "home">...</div>
.....
</div>
<script>
$(function () {
$('#myTab a:last').tab('show')
})
</script>
Beispiel
Das folgende Beispiel zeigt die Verwendung der Tab-Plugin-Methode .tab. Hier im Beispiel ist die zweite Registerkarte iOS aktiviert -
<ul id = "myTab" class = "nav nav-tabs">
<li class = "active">
<a href = "#home" data-toggle = "tab">
Tutorial Point Home
</a>
</li>
<li><a href = "#ios" data-toggle = "tab">iOS</a></li>
<li class = "dropdown">
<a href = "#" id = "myTabDrop1" class = "dropdown-toggle" data-toggle = "dropdown">
Java
<b class = "caret"></b>
</a>
<ul class = "dropdown-menu" role = "menu" aria-labelledby = "myTabDrop1">
<li>
<a href = "#jmeter" tabindex = "-1" data-toggle = "tab">
jmeter
</a>
</li>
<li>
<a href = "#ejb" tabindex = "-1" data-toggle = "tab">
ejb
</a>
</li>
</ul>
</li>
</ul>
<div id = "myTabContent" class = "tab-content">
<div class = "tab-pane fade in active" id = "home">
<p>Tutorials Point is a place for beginners in all technical areas.
This website covers most of the latest technologies and explains each of
the technology with simple examples.</p>
</div>
<div class = "tab-pane fade" id = "ios">
<p>iOS is a mobile operating system developed and distributed by
Apple Inc. Originally released in 2007 for the iPhone, iPod Touch, and
Apple TV. iOS is derived from OS X, with which it shares the Darwin
foundation. iOS is Apple's mobile version of the OS X operating system
used on Apple computers.</p>
</div>
<div class = "tab-pane fade" id = "jmeter">
<p>jMeter is an Open Source testing software. It is 100% pure Java
application for load and performance testing.</p>
</div>
<div class = "tab-pane fade" id = "ejb">
<p>Enterprise Java Beans (EJB) is a development architecture for
building highly scalable and robust enterprise level applications to be
deployed on J2EE compliant Application Server such as JBOSS,
Web Logic etc.</p>
</div>
</div>
<script>
$(function () {
$('#myTab li:eq(1) a').tab('show');
});
</script>
Veranstaltungen
In der folgenden Tabelle sind die Ereignisse aufgeführt, die mit dem Tab-Plugin ausgeführt werden sollen. Dieses Ereignis kann verwendet werden, um sich in die Funktion einzuhängen.
Veranstaltung | Beschreibung | Beispiel |
---|---|---|
show.bs.tab | Dieses Ereignis wird auf der Registerkarte "Show" ausgelöst, jedoch bevor die neue Registerkarte angezeigt wurde. Verwendenevent.target und event.relatedTarget um auf die aktive Registerkarte bzw. die vorherige aktive Registerkarte (falls verfügbar) abzuzielen. | |
gezeigt.bs.tab | Dieses Ereignis wird in der Registerkartenanzeige ausgelöst, nachdem eine Registerkarte angezeigt wurde. Verwendenevent.target und event.relatedTarget um auf die aktive Registerkarte bzw. die vorherige aktive Registerkarte (falls verfügbar) abzuzielen. | |
Beispiel
Das folgende Beispiel zeigt die Verwendung von Tab-Plugin-Ereignissen. Hier im Beispiel werden die aktuell und zuvor besuchten Registerkarten angezeigt -
<hr>
<p class = "active-tab"><strong>Active Tab</strong>: <span></span></p>
<p class = "previous-tab"><strong>Previous Tab</strong>: <span></span></p>
<hr>
<ul id = "myTab" class = "nav nav-tabs">
<li class = "active">
<a href = "#home" data-toggle = "tab">
Tutorial Point Home
</a>
</li>
<li><a href = "#ios" data-toggle = "tab">iOS</a></li>
<li class = "dropdown">
<a href = "#" id = "myTabDrop1" class = "dropdown-toggle" data-toggle = "dropdown">
Java
<b class = "caret"></b>
</a>
<ul class = "dropdown-menu" role = "menu" aria-labelledby = "myTabDrop1">
<li>
<a href = "#jmeter" tabindex = "-1" data-toggle = "tab">jmeter</a>
</li>
<li>
<a href = "#ejb" tabindex = "-1" data-toggle = "tab">ejb</a>
</li>
</ul>
</li>
</ul>
<div id = "myTabContent" class = "tab-content">
<div class = "tab-pane fade in active" id = "home">
<p>Tutorials Point is a place for beginners in all technical areas.
This website covers most of the latest technologies and explains each of
the technology with simple examples.</p>
</div>
<div class = "tab-pane fade" id = "ios">
<p>iOS is a mobile operating system developed and distributed by
Apple Inc. Originally released in 2007 for the iPhone, iPod Touch, and
Apple TV. iOS is derived from OS X, with which it shares the Darwin
foundation. iOS is Apple's mobile version of the OS X operating system
used on Apple computers.</p>
</div>
<div class = "tab-pane fade" id = "jmeter">
<p>jMeter is an Open Source testing software. It is 100% pure Java
application for load and performance testing.</p>
</div>
<div class = "tab-pane fade" id = "ejb">
<p>Enterprise Java Beans (EJB) is a development architecture for
building highly scalable and robust enterprise level applications to be
deployed on J2EE compliant Application Server such as JBOSS, Web Logic etc.</p>
</div>
</div>
<script>
$(function(){
$('a[data-toggle = "tab"]').on('shown.bs.tab', function (e) {
// Get the name of active tab
var activeTab = $(e.target).text();
// Get the name of previous tab
var previousTab = $(e.relatedTarget).text();
$(".active-tab span").html(activeTab);
$(".previous-tab span").html(previousTab);
});
});
</script>