• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Nach setTimeout funktioniert eine Funktion nicht mehr

leon2225

New member
Guten Abend,
ich bin jetzt seit ca. 3 Stunden dabei den Fehler in diesen Funktionen zu finden, komme aber einfach auf kein Ergebnis ...
Also als erstes, sind die Drei Ausschnitte Teile einer Funktion.
Diese Funktion soll einmal bestimmen, ob Objekte überhaupt angezeigt werde, ob sie rechts oder links angezeigt werden und zu guter letzt wird auch noch das ein- bzw. ausblenden animiert.
Nun habe ich das ein und ausblenden optimiert (Das findet im 2. Ausschnitt statt) woraufhin die zuordnung ob es rechts oder links angezeigt wird nicht mehr funktioniert ... ich habe aber keine ahnung warum ...

Bestimmt ob der Div rechts oder linksbündig ist
Code:
function leftOrRight(){
            $('.show:even').addClass('container_middle_left').removeClass('container_middle_right');
            $('.show:odd').addClass('container_middle_right').removeClass('container_middle_left');                
    };

Hier wird das ein und ausblenden animiert
Code:
var leftOrRight = 0;
        switch(docSelector){
            case 'bothReplaceable':
                $('.content_frenke_meyer').removeClass('hide');
                window.setTimeout(function(){$('.content_frenke_meyer').removeClass('slideUp').addClass('show')}, 500)
                $('.content_koenig').removeClass('hide');
                window.setTimeout(function(){$('.content_koenig').removeClass('slideUp').addClass('show')}, 500)
                
                break;
            case 'frenkeMeyerReplaceable':
                $('.content_frenke_meyer').removeClass('hide');
                window.setTimeout(function(){$('.content_frenke_meyer').removeClass('slideUp').addClass('show')}, 500)
                $('.content_koenig').removeClass('show').addClass('slideUp');
                window.setTimeout(function() {$('.content_koenig').addClass('hide')}, 500);
                break;
            case 'koenigReplaceable':
                $('.content_frenke_meyer').removeClass('show').addClass('slideUp');
                window.setTimeout(function() {$('.content_frenke_meyer').addClass('hide')}, 500);
                $('.content_koenig').removeClass('hide');
                window.setTimeout(function() {$('.content_koenig').removeClass('slideUp').addClass('show')}, 500)
                
        }
Dazu hier noch das CSS
Code:
.slideUp
{
    margin-top: -30px;
    opacity: 0;
    transition: all 0.5s ease-in-out;    
}
.hide
{
    margin-top: -430px;
    /*opacity: 0;
    transition-delay: 0.5s;
    transform: scaley(0.005);
    transition: all 1s ease-in-out; */
    
}
.show
{
    transition: opacity 0.5s ease-in-out;
}
Hier ist das click event, also die steuerung
Code:
if( ($('.content_frenke_meyer').length > 0) || ($('.content_koenig').length > 0))
    {
        $('#imgBothHeadline').click(function(){
            headlineSelector('#imgBothHeadline', 'bothReplaceable');
            leftOrRight();
        });
        $('#imgFrenkeMeyerHeadline').click(function(){
            headlineSelector('#imgFrenkeMeyerHeadline', 'frenkeMeyerReplaceable');
            leftOrRight();
        })
        $('#imgKoenigHeadline').click(function(){
            headlineSelector('#imgKoenigHeadline', 'koenigReplaceable');
            leftOrRight();
        })
     }

Ich hoffe ihr önnt mir helfen,
mit freundlichen Grüßen,
Leon
 
Was genau meinst du mit Zuordnung? Was genau passiert nicht, was erwartet wird? Fehlerkonsole leer?
 
Ich hoffe ihr önnt mir helfen
also mit den codefetzen kann man nur raten
unter der annahme,
* der 2. fetzen steht in der funktion headlineSelector
* dein threadtitel hat was mit dem problem zu tun
* dein problem hat was mit den klassen container_middle_right/container_middle_left zu tun
in dem 3. fetzen, wo leftOrRight() aufgerufen wird, ist die klasse show noch nicht richtig gesetzt, das passiert ja erst im timeouteventhandler frühestens 500ms später
 
Zurück
Oben