Text später einblenden mit Javascript? Muss man es durch einen Link machen, wo die ganze Webseite neu geladen wird oder geht es einfacher?

4 Antworten

Dafür gibt es mindestens zwei Ansätze.

Ansatz 1: Der erste wäre, dass du bereits den kompletten Text in der html-Datei geladen hast und ihn mit css anschneidest, z.B. in dem du die Höhe des Containers, in dem der Text liegt, nicht automatisch anpassen lässt, sondern ihm eine feste Höhe gibst. Mit einem zweiten Element, das in diesem Container absolut liegt und bottom: 0 hat, könntest du mit einem transparenten Verlauf weiteren Text andeuten und auch einen Schriftzug mit "weiterlesen" einfügen. Wenn man nun auf dieses Element klickt, änderst du mit JavaScript die Höhe des Containers, in welchem der Text liegt.

Ansatz 2: Du lädst den Text mit Ajax erst beim Klick auf "weiterlesen" nach, statt den gesamten Text bereits geladen zu haben und ihn anzuschneiden.

Ich empfehle dir letzteres, weil der Nutzer dann keine Informationen laden muss, die ihn nicht wirklich interessieren.

Also wir machen das alles mit jquery. Kann ich nur empfehlen.

Ein kleines Beispiel

$('.clickregion').click(function(){
$('.selector').toggle();
});

Ist zwar keine Lösung, aber ein Hinweis wohin JavaScript Reise hingehen sollte

Woher ich das weiß:Berufserfahrung – Web Developer bei einem mittelständischen Portalbetreiber

Du kannst "weiterlesen" als Link oder als Schaltfläche realisieren und das Click-Ereignis abfangen oder du lädst automatisch nach eine bestimmten Zeit den Rest nach, indem du setTimeout verwendest.

Woher ich das weiß:Berufserfahrung – Programmierer

Nein, man muss keine ganz neue Website dafür machen!

Es reicht eigentlich schon, den Text in ein Container zu packen, der unsichtbar ist und bei Druck auf den Knopf "Weiterlesen" eine Javascriptmethode aufzurufen, die den Container sichtbar und den Button unsichtbar macht und evtl. einen anderen Button sichtbar macht, der den so "ausgeklappten" Text wieder einfährt!