Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS] Dlaczego wszystko miga po najechaniu myszą?
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Looozak
Witam. Z racji, że na Javie o ile wgl to już nie podchodzi pod Ajax, się nie znam stworzyłem bardzo prymitywny kod:

  1. function menu_zakladka(x){
  2. switch(x){
  3. case 1:
  4. document.getElementById('zakladka1').style.backgroundImage="url(images/zakladka_akt.gif)";
  5. document.getElementById('zakladka2').style.backgroundImage="url(images/zakladka.gif)";
  6. document.getElementById('zakladka3').style.backgroundImage="url(images/zakladka.gif)";
  7. document.getElementById('zakladka4').style.backgroundImage="url(images/zakladka.gif)";
  8.  
  9. document.getElementById('nasza_szkola').style.display="block";
  10. document.getElementById('uczen_rodzic').style.display="none";
  11. document.getElementById('kronika').style.display="none";
  12. document.getElementById('galeria').style.display="none";
  13. break;
  14. case 2:
  15. document.getElementById('zakladka2').style.backgroundImage="url(images/zakladka_akt.gif)";
  16. document.getElementById('zakladka1').style.backgroundImage="url(images/zakladka.gif)";
  17. document.getElementById('zakladka3').style.backgroundImage="url(images/zakladka.gif)";
  18. document.getElementById('zakladka4').style.backgroundImage="url(images/zakladka.gif)";
  19.  
  20. document.getElementById('nasza_szkola').style.display="none";
  21. document.getElementById('uczen_rodzic').style.display="block";
  22. document.getElementById('kronika').style.display="none";
  23. document.getElementById('galeria').style.display="none";
  24. break;
  25. case 3:
  26. document.getElementById('zakladka3').style.backgroundImage="url(images/zakladka_akt.gif)";
  27. document.getElementById('zakladka1').style.backgroundImage="url(images/zakladka.gif)";
  28. document.getElementById('zakladka2').style.backgroundImage="url(images/zakladka.gif)";
  29. document.getElementById('zakladka4').style.backgroundImage="url(images/zakladka.gif)";
  30.  
  31. document.getElementById('nasza_szkola').style.display="none";
  32. document.getElementById('uczen_rodzic').style.display="none";
  33. document.getElementById('kronika').style.display="block";
  34. document.getElementById('galeria').style.display="none";
  35. break;
  36. case 4:
  37. document.getElementById('zakladka4').style.backgroundImage="url(images/zakladka_akt.gif)";
  38. document.getElementById('zakladka3').style.backgroundImage="url(images/zakladka.gif)";
  39. document.getElementById('zakladka2').style.backgroundImage="url(images/zakladka.gif)";
  40. document.getElementById('zakladka1').style.backgroundImage="url(images/zakladka.gif)";
  41.  
  42. document.getElementById('nasza_szkola').style.display="none";
  43. document.getElementById('uczen_rodzic').style.display="none";
  44. document.getElementById('kronika').style.display="none";
  45. document.getElementById('galeria').style.display="block";
  46. break;
  47. }
  48. }


No generalnie chodzi o pierwszą część w każdym case tzn zmiane tła diva. Po najechaniu na którąkolwiek z zakładek tło się zmienia lecz jest bardzo widoczne ich odświeżenie, tzn mignięcie. U znajomego na komputerze jest to tylko za pierwszym razem później nie ma w ogóle. U mnie niestety jest cały czas. Istenieje jakiś sposób na to? Może jakieś wcześniejsze wczytanie tych 2 obrazków aby nie odczytywało ich za każdym razem z serwera ? Pozdrawiam smile.gif
kamil4u
Załaduj wcześniej obrazki do cache przeglądarki. Taki preload obrazków. Poszukaj pod nazwą: JS new Image
Korab
Możesz też wysłać nagłówki, żeby obrazki zostawały w cache'u użytkownika, jeżeli tego jeszcze nie masz.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.