2017-02-05 5 views
0
$(document).ready(function(){ 
$("div[name=animate]").each(function(){ 
    animateDiv($(this)); 
}); 
}); 

function makeNewPosition(){ 

// Get viewport dimensions (remove the dimension of the div) 
var h = $(window).height() - 50; 
var w = $(window).width() - 50; 

var nh = Math.floor(Math.random() * h); 
var nw = Math.floor(Math.random() * w); 

return [nh,nw];  

} 

function animateDiv(c){ 
var newq = makeNewPosition(); 
$(c).animate({ top: newq[0], left: newq[1] }, function(){ 
    animateDiv(c);   
}); 

}; 

http://codepen.io/anush2209/pen/JEZOaG

Dies ist der Link zu dem Projekt. Alles was ich ändern möchte ist, dass es langsamer ist. Gibt es eine Möglichkeit, einen Geschwindigkeitsmodifikator oder etwas hinzuzufügen, in das ich Werte eingeben kann, um den allgemeinen Geschwindigkeitsbereich zu steuern.Wie kann ich mache diese langsam

+0

Ich gehe davon aus Sie die Standard-Animationsfunktionen von jQuery verwenden (bitte nützliche Tags zu Fragen hinzufügen). Sie lesen besser die [Dokumentation von 'animate'] (http://api.jquery.com/animate/), dafür ist StackOverflow nicht geeignet. –

+0

Wäre das selbst herauszufinden, wenn Sie die 'animate' Dokumente lesen – charlietfl

+0

http://codepen.io/anon/pen/EZRbqP Blick auf JS-Teil und Suche nach Geschwindigkeit Variable. Da gehst du. Das nächste Mal lesen Sie die Dokumentation http://api.jquery.com/animate/ – besciualex

Antwort

1

Sie können einfach die Dauer als Parameter innerhalb der Animate-Methode übergeben.

$(c).animate({ top: newq[0], left: newq[1] }, 3000, function(){ 
     animateDiv(c);   
    }); 

CODEPEN

http://codepen.io/alexincarnati/pen/NdzwQE

Verwandte Themen