Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jQuery] mouseover z opóźnieniem
grzegorz-gg
post 29.12.2008, 16:25:26
Post #1





Grupa: Zarejestrowani
Postów: 94
Pomógł: 0
Dołączył: 25.12.2004

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


Witam!

Jak wykonać za pomocą JQuery opóźnienie około 0,5 sekundy które po najechaniu na div-a wykona jakos funkcja np. alert().
Nie chodzi mi tu o typowe działanie setTimeout() która tylko opóźnia funkcje lecz o wywołanie jej tylko w tym przypadku jak kursor znajduje się co najmniej 0,5 sekundy.

Z setTimeout() mam taki problem że funkcja wywołuje się nawet jak kursor opuścił już div-a.

Za pomoc z góry dziękuje.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
batman
post 29.12.2008, 18:51:13
Post #2





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Przypisz do zmiennej globalnej wartość zwracaną przez setTimeout. Przy mouseout robisz clearTimeout i po problemie. Mniej więcej tak:
Kod
var t;
$("jakis_selektor").mouseover(function() {
    t = setTimeout("funkcja_jaka_ma_sie_wykonac()", 500);
}).mouseout(function() {
    clearTimeout(t);
});


--------------------
I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features.
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: 16.07.2025 - 07:32