Antworten auf deine Fragen:
Neues Thema erstellen

jQuery Div Inhalt ab Zeichenlänge kürzen (aus- und einklappbar)

_aze_

Noch nicht viel geschrieben

Guten Tag,

ich habe folgendes Problem:
Ich möchte, dass ein Text, sobald er eine Zeichenlänge überschreitet, gekürzt wird.
Das soll dann so aussehen:
"Text Text Te... weiterlesen"

Wenn auf "weiterlesen" geklickt wird soll der Rest des Textes erscheinen und hinten dran ein "Einklappen".

Nun habe ich es fast geschafft und es klappt wie gewollt bei einem Div.
Sobald ich aber zwei ausfahre und wieder einfahren möchte, spinnt das ganze.

Mein Code:
HTML:
function checkSidebar(){
        $('.sidebarText').each(function(i){
            $(this).addClass('sidebar'+i);
            if($('.sidebar'+i).html().length > 100){
                $(this).html(function(_,txt){
                    var toAppend = txt.slice(100,$(this).html().length);
                    $(this).html(txt.slice(0,100)).append('... <div class="expandSidebar">weiterlesen</div>');
                    $('.expandSidebar',this).click(function(){
                       $('.sidebar'+i).html(function(_,thisDelete){
                          $(this).html(thisDelete.slice(0,-48)).append(toAppend+'<div class="reduceSidebar">Einklappen</div>');
                          $('.reduceSidebar',this).click(function(){
                             $('.sidebar'+i).html(function(_,thisRemove){
                                $(this).html(thisRemove.slice(0,-('<div class="reduceSidebar">Einklappen</div>'.length)));
                             });
                             return checkSidebar();
                          });
                       }); 
                    });
                });
            }
        });
    }
    checkSidebar();
Habe langsam keine Idee mehr woran es liegen könnte.
Ich hoffe mir kann jemand weiterhelfen.

Edit:
Habe den Code nochmal etwas "verbessert", trotzdem noch der selbe Fehler.


MfG
 
Zuletzt bearbeitet:

Duddle

Posting-Frequenz: 14µHz

AW: jQuery Div Inhalt ab Zeichenlänge kürzen (aus- und einklappbar)

Also ich bin mir ziemlich sicher, dass es am "return checkSidebar()" liegt, also dass du die Initialisierung mehrmals vornimmst und daher wahrscheinlich interne Variablen überschreibst bzw. die Logik durcheinanderwirfst.

Möchtest du an deinem Code festhalten und den debuggen oder einfach die Funktionalität haben? Für letzteres gibt es nämlich schon genügend PlugIns, u.a. http://www.jeremymartin.name/projects.php?project=jTruncate oder


Duddle
 

_aze_

Noch nicht viel geschrieben

AW: jQuery Div Inhalt ab Zeichenlänge kürzen (aus- und einklappbar)

Habs jetzt doch geschafft, trotzdem vielen Dank!

MfG
 
Zuletzt bearbeitet:
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.615
Beiträge
1.538.352
Mitglieder
67.527
Neuestes Mitglied
Christian Eidelloth
Oben