
Poniewaz mam kilka odnosnikow na jednej stronie i wszystkie one odpowiadaja za ladowanie tresci (zdjecia) do jednego diva to po najechaniu na jeden odnosnik zanim zaladuje sie zdjecie z poprzedniego nastepowalo miganie strony,
Wiec postanowilem zrobic przerwanie funkcji load() gdy najedzie sie na kolejny odnosnik, niestety to nic nie dalo, wie postanowilem zrobic opoznienie gdy najezdzam myszka na odnosnik , jednoczesnie pozostawiajac przerwanie ladowania, kod wyglada tak :
$("div.data a").live("mouseenter",function(){ var self = $(this); setTimeout(function(){ //jesli istnieje xhr to zatrzymanie if (xhrRequest) try { xhrRequest.abort(); } catch (e) {} //przypisanie wartosci obiektu xhr xhrRequest = $('#foto').load('gallery.php', { 'dir':self.parent('div.data').attr('rel'), 'kategory':self.parent('div.data').attr('value'), 'gallery':'no'}, function() { $(this).hide().fadeIn(500); }); $move_by = 600; $frame_left = 0; $frame_no = 1; }, 100); return false; });
Ale niestety , strona jak migala tak miga, a to wszystko przez parametr fadeIn.
Jak widzimy przy pomyslnym zaladowaniu poprzez load() nastepuje wywolanie funkcji :
$(this).hide().fadeIn(500);
Jesli ustawie opoznienie po najechaniu na odnosnik wieksze niz argument fadeIn to jest z grupsza ok, strona nie miga, jedynie czasami widac jakies dziwne przeblyski, ale ogolnie jest ok.
No ale teraz chcialbym zeby argument fadeIn() wynosil chociaz 500ms, a przeciez nie ustawie opoznienia hover na 500ms,
Moze jest jakis sposob zeby zatrzymac fadeIn() ? ale przeciez to powinno sie dziac w momencie gdy robie xhrRequest.abort()....
Ma ktos jakies pomysly ?