Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [js] wykonanie funkcji po 3 sekundach
puz219
post
Post #1





Grupa: Zarejestrowani
Postów: 201
Pomógł: 0
Dołączył: 1.07.2007

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


Witam.

Chciałbym zrobić coś takiego w js, żeby funkcja wykonywała się dopiero po 3 sekundach od wywołania,a le nie mam zielonego pojęcia, jak coś takiego osiągnąć, naturalnie jeśli to możliwe.

Mam na stronie link, po najechaniu na którego wyświetla mi się zawartość diva i teraz próbuje zrobić, tak, żeby zawartość diva znikała po 3 sekundach od momentu, w którym link przestaje być aktywny.

mam coś takiego:

  1. <a href="#" onmouseover="zawartosc('show')" onmouseout="zawartosc('hide')">zawartosc</a>
  2. <div id="zawartosc" style="display:none;">
  3. jakis tam tekst
  4. </div>


a teraz funkcja zawartosc()
  1. funtion zawartosc(a) {
  2. if (a == 'show') {
  3. document.getElementById('zawartosc').style.display = 'block';
  4. }
  5. else if(a == 'hide') {
  6. document.getElementById('zawartosc').style.display = 'none';
  7. }
  8. }


Proszę o jakieś wskazówki, jak coś takiego zrobić, żeby przy onmoueout wykonanie funkcji zawartosc('hide) nastąpiło dopiero po 3 sekundach.

Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
pest
post
Post #2





Grupa: Zarejestrowani
Postów: 78
Pomógł: 15
Dołączył: 10.12.2007
Skąd: Lublin

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


Jest w JS funkcja setTimeout ( no i jeszcze np. clearTimeout).

Ogólnie w google dobrze jest to przedstawione, ale nie mam fazy na swoją robotę, to napiszę tobie coś winksmiley.jpg.
  1. <a href="#" onmouseover="zawartosc('show'); clearTimeout(tim);" onmouseout="tim = setTimeout( 'zawartosc('hide');', 3000);">zawartosc</a>


Ale sprawdź jeszcze, bo sam nie sprawdzałem działania tego kodu.
Go to the top of the page
+Quote Post
puz219
post
Post #3





Grupa: Zarejestrowani
Postów: 201
Pomógł: 0
Dołączył: 1.07.2007

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


niestety nie działa, pokazuje się, ale potem nie chce się już ukryć
Go to the top of the page
+Quote Post
pest
post
Post #4





Grupa: Zarejestrowani
Postów: 78
Pomógł: 15
Dołączył: 10.12.2007
Skąd: Lublin

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


To dodaj jeszcze przed deklaracją funkcji (albo gdziekolwiek indziej w kodzie js) linijkę:
var tim;


U mnie zadziałało, wcześniej się sadziło do niezainicjowanej zmiennej.
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 Aktualny czas: 19.08.2025 - 04:01