Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Uniknac interwalu w interwale
wizard144
post
Post #1





Grupa: Zarejestrowani
Postów: 138
Pomógł: 3
Dołączył: 4.05.2009

Ostrzeżenie: (0%)
-----


Wiem ze to pewnie glupota i gdybym sam pomyslal to bym to zrobil jakos, ale jest funkcja ktora przesuwa mi płynnie obrazek po kliknieciu na niego, jak klikne 2 razy to obrazek się zapętla jeśli mogę to tak nazwac


  1. wartosc = document.getElementById('divek').style.left;
  2. wartosc=parseInt(wartosc);
  3.  
  4.  
  5. zmiana=0;
  6.  
  7. id = setInterval(
  8. function()
  9. {
  10.  
  11. document.getElementById('divek').style.left=wartosc-5;
  12. wartosc=wartosc-5;
  13. zmiana=zmiana+5;
  14.  
  15.  
  16. if(zmiana == 50)
  17. {
  18. clearInterval(id);
  19. zmiana=0;
  20. }
  21.  
  22. }, 20);


Wygląda to mniej wiecej w taki sposob. Jak uniknac zapetlenia, tj wystepowania interwalu w interwale ? Jakis pomysł na jakiś warunek ? Próbowałem sprawdzać czy istnieje zmienna 'id'. no i mam jeszcze jedną opcję, ale tu w gre wchodzi AJAX a to zbedne obciazenie.

Proszę o odpowiedź
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Berg
post
Post #2





Grupa: Zarejestrowani
Postów: 180
Pomógł: 37
Dołączył: 1.05.2008
Skąd: Białystok

Ostrzeżenie: (0%)
-----


  1. wartosc = document.getElementById('divek').style.left;
  2. wartosc=parseInt(wartosc);
  3.  
  4.  
  5. zmiana=0;
  6.  
  7. if(id == false) {
  8. id = setInterval(
  9. function()
  10. {
  11.  
  12. document.getElementById('divek').style.left=wartosc-5;
  13. wartosc=wartosc-5;
  14. zmiana=zmiana+5;
  15.  
  16.  
  17. if(zmiana == 50)
  18. {
  19. clearInterval(id);
  20. id = false;
  21. zmiana=0;
  22. }
  23.  
  24. }, 20);
  25. }
  26.  

Na początku skryptu ustawiasz id na false. Przy kliknięciu w obrazek sprawdzasz czy id ma wartość false, jeśli tak to podstawiasz interval. Przy czyszczeniu intervalu ponownie ustawiasz wartość id na false.
Go to the top of the page
+Quote Post
wizard144
post
Post #3





Grupa: Zarejestrowani
Postów: 138
Pomógł: 3
Dołączył: 4.05.2009

Ostrzeżenie: (0%)
-----


Hmmm ze tez na to nie wpadlem (IMG:style_emoticons/default/smile.gif) ale nie wiem czy to tak podziala (IMG:style_emoticons/default/smile.gif) wiesz niby funkcja wywoluje sie ponownie. oj zobaczymy ;d sprawdze (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 01:38