Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Opoznienie w petli for
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Caporeira
Potrzebuje wzkonac opoznienie w petli. Chodzi o to aby obiekt sie przesuwal co 125 punktow z mala predkoscia. Tego Timeouta nie potrzebuje bo on tylko opoznia start przesuwania, myslalem ze to on opozni wykonywanie petli. Pomoze mi ktos jak opoznic petle ?

  1. var value = 0;
  2. var minValue = 0;
  3. var maxValue = 7;
  4. var startValue;
  5. var stopValue = 750;
  6.  
  7. for(startValue = 0; startValue <= 750; startValue = startValue + 125){
  8.  
  9.  
  10. setTimeout(function() {webMI.gfx.setMoveY("id_61", offset)},4250);
  11. setTimeout(function() {webMI.gfx.setMoveY("id_69", offset)},2250);
  12.  
  13. var offset = webMI.translate(value, minValue, maxValue, startValue, stopValue);
  14.  
  15. //webMI.gfx.setMoveY("id_61", offset);
  16. //webMI.gfx.setMoveY("id_69", offset);
  17. }
Tuminure
Np. rekurencją:
http://jsfiddle.net/48hpxj0f/
Caporeira
Bardzo dziękuje, potrzebuje wyrozumiałości gdyż jestem początkującym smile.gif

Czy jakoś tak będzie wygląda dokładnie mój przypadek ? Bo coś nie idzie, wiec na pewno robię coś źlę sad.gif

  1. var value = 0;
  2. var minValue = 0;
  3. var maxValue = 7;
  4. var startValue = 0;
  5. var currentValue = 0;
  6. var stopValue = 875;
  7.  
  8. var loop = function() {
  9. setTimeout(function() {
  10. webMI.gfx.setMoveY("id_61", offset);
  11. setTimeout(function() {
  12. webMI.gfx.setMoveY("id_69", offset);
  13. currentValue += 125;
  14. if(currentValue <= 875) {
  15. loop();
  16. }
  17. },2250);
  18. },2250);
  19. };
  20. var offset = webMI.translate(value, minValue, maxValue, startValue, stopValue);
  21. loop();
  22.  
trueblue
A nie lepiej zmienić krok w pętli?
Przykładowo krok w pętli=1, a obiekt przesuwam o int(krok/2), w wyniku czego obiekt przesuwa się dwa razy wolniej niż przyrost kroku.
Caporeira
Potrzebuje przedstawić obiek aby się przesuwał. Ma to być w formie animacji, czyli zauważalne przez ludzkie oko.
Może być dowolny sposób, byle z jakimś objaśnieniem ... abym zrozumniał, gdyż chcę się tego nauczyć smile.gif
Dzięki!

PS. A nie łatwiej będzie to zrobić np z jakimś Timerem ?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.