Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Dziwny problem z obrazkami, Występuje pod FireFox'em
luniak
post 11.10.2009, 22:33:27
Post #1





Grupa: Zarejestrowani
Postów: 171
Pomógł: 36
Dołączył: 12.01.2008
Skąd: Puszcza Mariańska

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


Mam dziwny problem z obsługą obrazków w JS pod FF.

Problem wygląda następująco:

Mam kod preloadujący obrazki:

  1. var dlogosc_paska_postepu = 300
  2. var aktualna_strona;
  3. var strony_gazety = new Array("obrazek1"
  4. , "obrazek2")
  5.  
  6. if (document.images) {
  7. var obrazki = new Array(),coverage = Math.floor(dlogosc_paska_postepu/strony_gazety.length),aktualna_ilosc = 0
  8. var zaladowane = new Array(),i,covered,timerID
  9. var pozostala_dlogosc = dlogosc_paska_postepu%coverage
  10. }
  11.  
  12. function laduj_obrazki() {
  13. for (i = 0; i < strony_gazety.length; i++) {
  14. obrazki[i] = new Image()
  15. obrazki[i].src = strony_gazety[i]
  16. }
  17. for (i = 0; i < obrazki.length; i++) {
  18. zaladowane[i] = false
  19. }
  20. ilosc = obrazki.length;
  21. sprawdz_wyslane()
  22. }
  23. function sprawdz_wyslane() {
  24. if (aktualna_ilosc == obrazki.length) {
  25. show();
  26. return
  27. }
  28. for (i = 0; i <= obrazki.length; i++) {
  29. if (zaladowane[i] == false && obrazki[i].complete) {
  30. zaladowane[i] = true
  31. aktualna_ilosc++
  32.  
  33.  
  34. temp = parseInt((aktualna_ilosc/ilosc)*100);
  35.  
  36. document.getElementById('postep').innerHTML=temp + '% [' + aktualna_ilosc + '/' + ilosc + ']';
  37. }
  38. }
  39. timerID = setTimeout("sprawdz_wyslane()",10)
  40. }
  41.  



Po wczytaniu obrazków wywoływan jest funkcja show() która ma wyswietlic 1 obrazek z tablicy:

  1. document.getElementById('bodywrapper').innerHTML='<img src="' + strony_gazety[0] + '">';


niestety pod FF kończy się to tym że obrazek zaczyna się od nowa wczytywać.

Pod IE od 6.0 wzwyż, nowym Google Chrome oraz nową Operą obrazek wczytuje się już z pamięci podręcznej. Niestety FireFox zachowuje się tak jakby nie widział wczytanych obrazków. Widzi je w pamięci podręcznej dopiero po przeładowaniu. Ma ktoś pomysł dlaczego tak się dzieje? jeżeli znacie sposób na to aby nie trzeba było odświeżać strony aby obrazki pod FF wczytywały się z pamięci podręcznej ty byłbym wdzięczy na pomoc.


--------------------
Jeżeli ktoś na forum Ci pomógł, możesz mu podziękować klikając w opcje "Pomógł" pod jego postem!
--------------------

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: 14.08.2025 - 01:07