Javascript Tab-Menüs: Coole Effekte für deine Sidebar

JavaScript Tab Menue Tutorial

Javascript-Tabs sind eine tolle Möglichkeit, jede Menge Bloginhalte anzu­zeigen, ohne das die Sidebar unnötig lang wird. Auf Blogs ist es z.B. beson­ders beliebt, die neusten Artikel, belieb­teste Artikel oder die neusten Kommentare in Tabs zu »ver­pa­cken«. Mit dem jQuery UI Tab-Widget kannst du ein sol­ches Tab-Menü ganz leicht ein­setzen.

Eine Demo des Widgets mit allen Optionen und einer Dokumentation fin­dest du hier.

Javascript Tabs mit jQuery UI

Um das Widget in deine Webseite ein­zu­bauen, gehst du ein­fach auf diese Download-Webseite von jQuery UI.

1. Download das Widget-Set

Hier kannst du dir ein indi­vi­du­elles Set an Widgets und Funktionen der jQuery UI Library für dein Projekt zusam­men­stellen (unter dem Punkt Widgets fin­dest du die gewünschte Tab-Funktion).

Wenn du möch­test kannst du dir jetzt noch rechts in der Sidebar ein Theme aus­su­chen. Weiter geht’s zum Download des Pakets.

2. Einbinden in deine Webseite

Als nächsten Schritt lädst du den js-Ordner mit den beiden Dateien jquery-1.3.2.min.js und jquery-ui-1.7.2.custom.min.js auf deinen Server hoch, und ver­linkst in im head-Tag mit fol­gendem Code auf diese beiden Dateien:

<script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.7.1.custom.min.js"></script>

Willst du die Dateien nicht extra auf deinen Server laden, kannst du alter­nativ auf die Google Ajax Libraries linken. Dazu musst du ledig­lich fol­genden Code in den head-Tag einsetzen.

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js "></script>

Willst du das Style-Theme von jQuery UI ver­wenden, musst du außerdem die CSS-Datei jquery-ui-1.7.2.custom.css aus dem css-Ordner auf deinen Server laden, und diese eben­falls im head-Tag verlinken.

<link type="text/css" href="css/themename/jquery-ui-1.7.1.custom.css" rel="Stylesheet" />

Jetzt kannst du deine Tabs ein­setzen. Für ein ein­fa­ches Tab-Menü kannst du fol­genden Demo-Code verwenden.

<script type="text/javascript">
	$(function() {
		$("#tabs").tabs();
	});
	</script>

<div class="demo">

<div id="tabs">
	<ul>
		<li><a href="#tabs-1">Nunc tincidunt</a></li>
		<li><a href="#tabs-2">Proin dolor</a></li>
		<li><a href="#tabs-3">Aenean lacinia</a></li>
	</ul>
<div id="tabs-1">
<p>Proin elit arcu, rutrum commodo, vehicula tempus, commodo a, risus. Curabitur nec arcu. Donec sollicitudin mi sit amet mauris. Nam elementum quam ullamcorper ante. Etiam aliquet massa et lorem. Mauris dapibus lacus auctor risus. Aenean tempor ullamcorper leo. Vivamus sed magna quis ligula eleifend adipiscing. Duis orci. Aliquam sodales tortor vitae ipsum. Aliquam nulla. Duis aliquam molestie erat. Ut et mauris vel pede varius sollicitudin. Sed ut dolor nec orci tincidunt interdum. Phasellus ipsum. Nunc tristique tempus lectus.</p>
</div>

<div id="tabs-2">
<p>Morbi tincidunt, dui sit amet facilisis feugiat, odio metus gravida ante, ut pharetra massa metus id nunc. Duis scelerisque molestie turpis. Sed fringilla, massa eget luctus malesuada, metus eros molestie lectus, ut tempus eros massa ut dolor. Aenean aliquet fringilla sem. Suspendisse sed ligula in ligula suscipit aliquam. Praesent in eros vestibulum mi adipiscing adipiscing. Morbi facilisis. Curabitur ornare consequat nunc. Aenean vel metus. Ut posuere viverra nulla. Aliquam erat volutpat. Pellentesque convallis. Maecenas feugiat, tellus pellentesque pretium posuere, felis lorem euismod felis, eu ornare leo nisi vel felis. Mauris consectetur tortor et purus.</p>
</div>

<div id="tabs-3">
<p>Mauris eleifend est et turpis. Duis id erat. Suspendisse potenti. Aliquam vulputate, pede vel vehicula accumsan, mi neque rutrum erat, eu congue orci lorem eget lorem. Vestibulum non ante. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Fusce sodales. Quisque eu urna vel enim commodo pellentesque. Praesent eu risus hendrerit ligula tempus pretium. Curabitur lorem enim, pretium nec, feugiat nec, luctus a, lacus.</p>
</div>
</div>

</div><!-- End demo -->

<div style="display: none;" class="demo-description">

<p>Click tabs to swap between content that is broken into logical sections.</p>

</div><!-- End demo-description -->

Jede Menge wei­tere Optionen, um das Tab-Menü anzu­passen, fin­dest du auf der Tab-Demo Seite von jQuery UI. Zum Beispiel können sich die Tab-Inhalte bereits bei Mausover, nicht erst bei Klick ändern etc.

Schau dir ein­fach mal die ver­schie­denen Funktionen des Widgets an, um einen Einblick in die viel­sei­tigen Möglichkeiten zu bekommen.

Eine aus­führ­liche Erklärung zur jQuery UI Library und den Widgets, fin­dest du unter »Getting Started with jQuery UI«.

Schöne Tab-Menüs als Inspiration

Falls du noch nicht ganz sicher bist, wie du deine Tabs stylen möch­test, und welche Inhalte sich für das Tab-Menü eignen, hier ein paar inspi­rie­rende Beispiele.

n.design Studio

Javascript Tabs mit jQuery UI

Komodo Media

Javascript Tabs mit jQuery UI

Freelance Folder

Javascript Tabs mit jQuery UI

Delibar

Javascript Tabs mit jQuery UI

CSS Tricks

Javascript Tabs mit jQuery UI

Kennst du wei­tere Webseiten beson­ders schönen Tab-Menüs, oder kennst du ein anders Javascript-Widget für die Tab-Funktion emp­fehlen? Dann schreibe mir doch ein­fach einen Kommentar, ich freue mich schon auf deine Tipps!

10 Kommentare

  1. Barbara

    Wieder mal ein toller Tipp! Vielen Dank dafür, liebe Ellen :) Die Idee, meh­rere Sidebar-Inhalte in Tabs zu ver­pa­cken, finde ich wirk­lich super. So kann man die Sidebar auf jeden Fall über­sicht­li­cher machen. Und wie so oft ist es gar nicht so schwierig :)

  2. Ellen

    Vielen Dank für eure Kommentare. Ja, Javascript-Effekte sind wirk­lich eine feine Sache :-) Und mit den jQuery UI Widgets hat man gleich meh­rere coole Möglichkeiten beisammen.

    @Barbara: Ich finde du hast recht. Wenn die Tabs gut gestaltet sind, wird die Sidebar viel über­sicht­li­cher. Toll ist auch, dass immer noch alle Inhalte von Google ein­ge­lesen werden können :-)

    @Dave: Hey, dein Slider mit den aktu­ellen News sieht echt klasse aus, gefällt mir sehr gut :-)

  3. Dave

    @Ellen: Meinst du diesen auf der Startseite? Dieser ist schon eine Weile da :)! Aber ich habe nun auch meine Sidebar auf den Folgeseiten ange­passt. Schlanker und übersichtlicher.

  4. Ellen

    @Dave: Sorry, da habe ich wohl etwas geschlafen… ;-) Jetzt habe ich die Featured-Tabs in der Sidebar ent­deckt. Sieht beides echt super aus, und du kannst so viel mehr Content unter­bringen. Hast du für die Tabs auch jQuery UI genutzt?

  5. Dave

    Wie kann man bei den Tabs dieses FadIn machen? Ich habs mal ver­sucht indem ich die Funktion so aufrufe

    $(»#tabs«).tabs({ fx: { opa­city: ›toggle‹, duration:›fast‹} });

    klappt zwar, aber nachher sind bei einigen Tabs der Inhalt nicht aus­wählbar! Was mach ich wohl falsch?

  6. Andreas Rauscher

    Ich liebe Tabs, sie haben aber einen großen Nachteil…
    Es werden alle Inhalte geladen obwohl sie vie­leicht gar nicht benö­tigt werden würden.

    Ich habe mir ein eigenes Mulitmedia Backend für Magento geschrieben, das ganze über Tab Menüs, pro­blem dort, die Ladezeiten, da wirk­lich alles geladen wird obwohl es gar nicht gebraucht wird.

    (Ladezeiten bei 1-2 Sekunden -> ein tick zu lang )

    Gruß Andreas Rauscher

  7. Oli

    Ich hab auch schon jQuery und Mootools ver­wendet. Bei meiner Speed Optimierung (für User und den Google Rank) ist mir auf­ge­fallen wie viel unnö­tiger Code da immer mitkommt.

    Besser ist das RightsJS:
    http://rightjs.org/

    Es gibt zwar noch nicht so viele Erweiterungen, dafür ist es sauber pro­gram­miert und schnell. Habe eben Tabs in meinem neusten Blogeintrag ver­wendet:
    http://blog.webgarten.ch/buchtipps/die-zauberformel-fur-designer/

    @Andreas es gibt auch Remote Tabs:
    http://rightjs.org/ui/tabs/demo

  8. Ellen

    Vielen Dank für Eure Kommentare und Eure tollen Tipps :-)

    @Andreas: Ja, das stimmt wohl mit den Ladezeiten. Sicher kommt es auch darauf an, welche Art von Content man in die Tabs packt. Vielleicht ist ja der Tipp von Oli mit den Remote-Tabs da eine ganz guter Lösungsansatz :-)

    @Oli: RightsJS möchte ich unbe­dingt mal aus­pro­bieren. Meist suche ich auch nach ein­fa­chen Möglichkeiten, ohne viel SchnickSchnack ;-) Das sieht super aus :-)

    Viele Grüße
    Ellen

Hinterlasse eine Antwort

Pflichtfelder sind mit * markiert.

*


Top