Akkordeon

Ein bestimmtes Tab vom Akkordeon über einen Link öffnen und ansteuern

Klicke auf einen Link um das dazugehörige Tab vom Akkordeon unten zu öffnen


Tab 1

Tab 2

Tab 3

Tab 4

Akkordeon

Diese Akkordeon-Tabs können auch oben über Links geöffnet werden.

Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtexte. Abgeschieden wohnen sie in Buchstabhausen an der Küste des Semantik, eines großen Sprachozeans. Ein kleines Bächlein namens Duden fließt durch ihren Ort und versorgt sie mit den nötigen Regelialien. Es ist ein paradiesmatisches Land, in dem einem gebratene Satzteile in den Mund fliegen. Nicht einmal von der allmächtigen Interpunktion werden die Blindtexte beherrscht – ein geradezu unorthographisches Leben.

Eines Tages aber beschloss eine kleine Zeile Blindtext, ihr Name war Lorem Ipsum, hinaus zu gehen in die weite Grammatik. Der große Oxmox riet ihr davon ab, da es dort wimmele von bösen Kommata, wilden Fragezeichen und hinterhältigen Semikoli, doch das Blindtextchen ließ sich nicht beirren. Es packte seine sieben Versalien, schob sich sein Initial in den Gürtel und machte sich auf den Weg. 

Als es die ersten Hügel des Kursivgebirges erklommen hatte, warf es einen letzten Blick zurück auf die Skyline seiner Heimatstadt Buchstabhausen, die Headline von Alphabetdorf und die Subline seiner eigenen Straße, der Zeilengasse. Wehmütig lief ihm eine rethorische Frage über die Wange, dann setzte es seinen Weg fort. Unterwegs traf es eine Copy. Die Copy warnte das Blindtextchen, da wo sie herkäme, wäre sie zigmal umgeschrieben worden und alles, was von ihrem Ursprung noch übrig wäre, sei das Wort „und“ und das Blindtextchen solle umkehren und wieder in sein eigenes, sicheres Land zurückkehren.

Doch alles Gutzureden konnte es nicht überzeugen und so dauerte es nicht lange, bis ihm ein paar heimtückische Werbetexter auflauerten, es mit Longe und Parole betrunken machten und es dann in ihre Agentur schleppten, wo sie es für ihre Projekte wieder und wieder missbrauchten. Und wenn es nicht umgeschrieben wurde, dann benutzen sie es immer noch.


Die Tabs von diesem Mobirise-Akkordeon werden über ein JavaScript angesteuert, das zum einen über eine Variable 'tab' die ID des jeweiligen Akkordeon-Tabs mittels 'click' öffnet und zum anderen den Anker der Mobirise-Section ansteuert, die bei mir die id="accordion3-4u" trägt. Diese ID könnt ihr leicht bestimmen, indem Ihr lokal publiziert und in den Quelltext des Akkordeon-Blocks guckt. Bei mir sieht das dann z.B. so im Quelltext aus:

<section class="accordion2 cid-rz6zTlSNKi" id="accordion3-4u">

Dieses JavaScript gehört in die Seiteneinstellung in den Bereich "End of <body> code":

<!-- JavaScript zum Ansteuern des Akkordeons und Öffnen des gewählten Tabs über seine ID -->
<script>
 function TabOpen ($tab)
 {
    document.getElementById($tab).click();
    window.location.href = '#accordion3-4u';
    ({
        behavior: 'smooth'
    });
 }
</script>

... unten ein alternatives JavaScript, bei dem dann nicht die Section vom Akkordeon angesteuert wird, sondern direkt der Inhalt des Akkordeon-Tabs. Auch dieses Skript würde dann in die Seiteneinstellung in den Bereich "End of <body> code" gehören:

<!-- JavaScript zum Ansteuern und Öffnen des gewählten Akkordeon-Tabs über seine ID -->
<script>
 function TabOpen ($tab)
 {
    document.getElementById($tab).click();
    document.getElementById($tab).scrollIntoView
    ({
        behavior: 'smooth'
    });
 }
</script>


Nun muss jedes Akkordeon-Tab im "Code-Editor" seine eindeutige und einmalige ID erhalten (siehe Markierungen im Screenshot unten) und zwar am <a> Tag. Ich habe diese ID's für meine 4 Tabs hier folgendermaßen genannt:

id="Tab1"
id="Tab2"
id="Tab3"
id="Tab4"

Code
Link

Die Links zu den Tabs habe ich im Mobirise Link-Fenster zunächst mit dem JavaScript Befehl 'void' gesetzt:

javascript: void();

Dies bewirkt zunächst eine Verlinkung ohne Aktion und es wird lediglich der Wert 'undefined' zurückgegeben ...


... und dann zusätzlich im "Code-Editor" den JavaScript Parameter 'onclick' hinzugefügt, der auf die Funktion "TabOpen" verweist:

<p><a href="javascript: void();" onclick="TabOpen('Tab1')" class="text-primary">Tab 1</a></p>
<p><a href="javascript: void();" onclick="TabOpen('Tab2')" class="text-primary">Tab 2</a></p>
<p><a href="javascript: void();" onclick="TabOpen('Tab3')" class="text-primary">Tab 3</a></p>
<p><a href="javascript: void();" onclick="TabOpen('Tab4')" class="text-primary">Tab 4</a></p>

Textlinks