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

[FRAGE] Animation in einer Endlossschleife

tobsenks

New member
Hallo Leute,

ich habe eine Animation mit JavaScript erstellt.. Diese ist in einer Funktion untergebracht.. Ich möchte nun das die Funktion wiederholt wird sobald sie abgeschlossen ist.. EInfach gesagt ich möchte das die Animation in einer Endlossschleife läuft... Kann mir bitte jemand helfen wie ich das mache?...

Aufruf der Funktion
PHP:
$(document).ready(function(){
    animateDiv();  
});

Funktion animateDiv
PHP:
function animateDiv(){
	$('#ball').animate({top: '+=65%'}, 1000);
	$('#ball').animate({top: '-=20%', left: '+=65%'}, 1000);
	$('#ball').animate({top: '-=55%', left: '-=55%'}, 1000);
	$('#ball').animate({top: '+=75%', left: '-=15%'}, 1000);
	$('#ball').animate({top: '-=75%', left: '+=65%'}, 1000);
	$('#ball').animate({top: '+=75%', left: '-=30%'}, 1000);
	$('#ball').animate({top: '-=75%', left: '-=48%'}, 1000);
	$('#ball').animate({top: '+=15%', left: '+=82%'}, 1000);
};

Habe keine Idee mehr wie ich es machen könnte...

Gruß
Tobias
 
Sowas wie
Code:
var interval = true;
function animateDiv(){
    while(interval) {
        $('#ball').animate({top: '+=65%'}, 1000); 
        $('#ball').animate({top: '-=20%', left: '+=65%'}, 1000); 
        $('#ball').animate({top: '-=55%', left: '-=55%'}, 1000); 
        $('#ball').animate({top: '+=75%', left: '-=15%'}, 1000); 
        $('#ball').animate({top: '-=75%', left: '+=65%'}, 1000); 
        $('#ball').animate({top: '+=75%', left: '-=30%'}, 1000); 
        $('#ball').animate({top: '-=75%', left: '-=48%'}, 1000); 
        $('#ball').animate({top: '+=15%', left: '+=82%'}, 1000); 
        animateDiv();
    }
};  

function stopAnimateDiv() {
    interval = false;
}

Aber eigentlich solltest du die Animationen verschachteln:
Code:
var interval = true;
function animateDiv(){
    while(interval) {
        $('#ball').animate({top: '+=65%'}, 1000, function( ){
            $('#ball').animate({top: '-=20%', left: '+=65%'}, 1000, function() {
                [...]
                $('#ball').animate({top: '+=15%', left: '+=82%'}, 1000, function() {
                    animateDiv();
                }); 
            });
        }); 
    }
};  

function stopAnimateDiv() {
    interval = false;
}
 
Zuletzt bearbeitet:
Zurück
Oben