Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> onload + background-image, gdy wszystkie tła zostaną załadowane
WebCM
post
Post #1





Grupa: Zarejestrowani
Postów: 375
Pomógł: 20
Dołączył: 28.07.2006

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


Firefox traktuje stronę za załadowaną, gdy pobierze HTML, CSS, skrypty i wszystkie obrazki <img>. Nie wiem, jak jest w IE. Dodatkowo Opera pobiera obrazki dopiero wtedy, gdy są potrzebne - przynajmniej starsze wersje.

Tworzę nową platformę dla gry logiczno-przygodowej. Postanowiłem, że obrazy pokojów będą po prostu tłami. Podobnie inne obiekty znajdujące się w nich. Po to, aby zwiększyć stabilność interfejsu.

Dopóki nie załaduje się grafika, gra wyświetla komunikat "Ładowanie..."

Teraz nie ma takiej pewności. Jeśli prawie wszystko będzie tłem, przeglądarka natychmiast wyświetli pierwszy pokój. Porażka na wejście. Obrazki (tła) wciąż będą ładować się. Gracze z szybkim łączem tego nawet nie zauważą, ale są możliwe sytuacje, w których transfer jest mocno spowolniony. I jak tu można grać?

Preload w stylu new Image(...).src = ""; też nie jest najlepszym wyjściem. Nigdy nie wiadomo, jak zachowa się przeglądarka.

Zatem co radzicie?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
WebCM
post
Post #2





Grupa: Zarejestrowani
Postów: 375
Pomógł: 20
Dołączył: 28.07.2006

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


Opera nie wczytuje od razu ukrytych <img>. To się sprawdza w przypadku stron internetowych, ale gorzej z grami, jeśli ktoś ma wolne łącze lub spowolnienie. Co do window.onload to jednak masz rację - sprawdziłem w Operze. Chociaż wg dokumentacji Firefoksa tła nie muszą być jeszcze załadowane.

Wyłączyłem mechanizmy cache. Przy ładowaniu za pomocą new Image().src JavaScript wczytał obrazek, a po kilku sekundach ustawiał tło. Grafika zawsze była gotowa do wyświetlenia. Tak samo w Firefoksie nawet w trybie prywatnym.

Tylko zastanawiam się, czy nie wczytywać poziomów za pomocą AJAX. Wtedy sposób z window.onload odpada.

Ten post edytował WebCM 10.08.2009, 19:53:45
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 30.12.2025 - 17:50