Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Stopniowy setTimeout
dark_root
post 3.12.2011, 14:05:40
Post #1





Grupa: Zarejestrowani
Postów: 341
Pomógł: 1
Dołączył: 19.11.2007

Ostrzeżenie: (10%)
X----


Witam,
mam taki problem. Próbuję zrobić, aby pewen element na stronie zmieniał swoje opacity o 0.1 i w rezultacie, żeby wyszedł taki efekt stopniowego pojawiania się. Chciałem do tego użyć funkcji setTimeout.
Niestety nie uzyskuje pożądanego efektu, lecz następuje jedynie pojedyncza zmiana z 0 na 1 bez stanów przejściowych. Poniżej mój kod:
Kod
    <script>
        function opacity(){
        for (i=0;i<=10;i++){    
setTimeout("opacityn()",1250);
}
    }
    function opacityn(){
    
var x=parseFloat(document.getElementById('active').style.opacity);
x=x+0.1;
document.getElementById('active').style.opacity = x;
    }
    </script>

Jak należy go zmodyfikować, aby uzyskać wspomniany efekt?
Go to the top of the page
+Quote Post
Crozin
post 3.12.2011, 14:50:42
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


11 razy ustawiasz 11 różnych wywołań, w efekcie po 1250 ms wszystkie wykonają się niemal w tym samym czasie.
Powinieneś skorzystać z setInterval oraz clearInterval.
Go to the top of the page
+Quote Post
dark_root
post 6.12.2011, 14:37:53
Post #3





Grupa: Zarejestrowani
Postów: 341
Pomógł: 1
Dołączył: 19.11.2007

Ostrzeżenie: (10%)
X----


wielkie dzięki, teraz śmiga zacnie Lkingsmiley.png
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: 29.06.2025 - 21:37