Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript] wykonanie funkcji po wykonaniu poprzedniej
The Night Shadow
post 28.10.2007, 13:17:30
Post #1





Grupa: Zarejestrowani
Postów: 495
Pomógł: 2
Dołączył: 5.02.2006
Skąd: Wrocław

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


  1. var przezroczystosc;
  2. var identyfikator;
  3. var ukryj;
  4. var kierunek;
  5.  
  6. function przeplot( i, id, ukrycie, strona )
  7. {
  8. przezroczystosc = i;
  9. identyfikator = id;
  10. ukryj = ukrycie;
  11. kierunek = strona;
  12.  
  13. if ( przezroczystosc > 0 )
  14. {
  15. getObj(identyfikator).style.opacity = przezroczystosc/100;
  16. getObj(identyfikator).style.filter = 'alpha(opacity=' + przezroczystosc + ')';
  17.  
  18. if ( kierunek == 1 )
  19. {
  20. przezroczystosc -= 2;
  21. }
  22. else
  23. {
  24. przezroczystosc += 2;
  25. }
  26.  
  27. setTimeout( "przeplot( przezroczystosc, identyfikator, ukryj, kierunek )", 10 )
  28. }
  29. else
  30. {
  31. if ( ukryj == 1 )
  32. {
  33. getObj(identyfikator).style.display = 'none';
  34. }
  35.  
  36. return true;
  37. }
  38. }


Powyższa funkcja odkrywa / ukrywa diva (odsłanianie / zasłanianie strony lub jej fragmentu).

  1. function wejscie()
  2. {
  3. menu();
  4. zmiana_dzialu( '' );
  5. statusy_uzytkownikow();
  6. }


Chciałbym, by zawartość powyższej funkcji wykonywana była dopiero wtedy, gdy div zostanie odkryty (przeroczystość 0.00). Jak to zrobić?

Chodzi mi o coś na zasadzie onSuccess w klasie advAJAX. Fakt jest to coś innego, ale efekt podobny.


--------------------
Programista Stron i Serwisów WWW oraz Aplikacji Internetowych
Specjalista ds. Pozycjonowania Aplikacji Internetowych
Copywriter
Go to the top of the page
+Quote Post
drPayton
post 28.10.2007, 15:06:10
Post #2





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

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


Nie napisałeś, jak i gdzie wywołujesz te funkcje. Metod jest sporo:
1. możesz przekazać zmienną przezroczystość do funkcji która ma się wywołać ale wykonanie ma nastąpić dopiero jak ta zmienna będzie miała określoną wartość (korzystasz wtedy z setInterval)
2. Możesz za pomocą metody call wywołać tą drugą funkcję w momencie jak pierwsza zwróci określoną wartość
3. Możesz wreszcie funkcję drugą umieścić w bloku typu on document ready (ta pierwsza poza nim) wtedy to co jest w tym bloku wykona się dopiero po zakończeniu wszystkiego innego
Go to the top of the page
+Quote Post
The Night Shadow
post 28.10.2007, 15:28:51
Post #3





Grupa: Zarejestrowani
Postów: 495
Pomógł: 2
Dołączył: 5.02.2006
Skąd: Wrocław

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


Możesz mi powiedzieć coś więcej na temat tego:

"2. Możesz za pomocą metody call wywołać tą drugą funkcję w momencie jak pierwsza zwróci określoną wartość"

? Szukałem w google i pod hasłem javascript call nie doszukałem się jakichś konkretów.


Drugie pytanie z trochę innej beczki. Czy jeśli mam jakąś funkcję i wywołuję ją w taki sposób:

wywolanie = new nazwa_funkcji(argument);

w jaki sposób wewnątrz tylko wywolania stworzyć setTimeout? Chodzi o to, że funkcja odkrywająca / ukrywająca jakieś elementy mogłaby być stosowana x razy dla róznych obiektów, a dokładniej x obiektów mogłoby się wyłaniać równocześnie.


--------------------
Programista Stron i Serwisów WWW oraz Aplikacji Internetowych
Specjalista ds. Pozycjonowania Aplikacji Internetowych
Copywriter
Go to the top of the page
+Quote Post
drPayton
post 28.10.2007, 15:46:00
Post #4





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

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


Znalazłem jeszcze coś ciekawego, co może się przydać: LINK, LINK2

Co do metody call: LINK
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 2.05.2025 - 05:26