Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Ładowanie googlemaps do ukrytego diva
Forum PHP.pl > Forum > Po stronie przeglądarki
ciembor
Mam taki problem. Jest img, po kliknięciu ma się zrobić fadeIn dużej mapy googlemaps. Ładowanie mapy podczas tej operacji jest paskudne, więc postanowiłem załadować ją po załadowaniu okna do diva z display:none, a następnie wykonać już sam fade. Jednak tak zainicjalizowana mapa się źle wyświetla. Nie ładuje wszystkich części mapy, tylko mały jej skrawek (jedną/dwie części). Wie ktoś co z tym zrobić?
devel
Nie wiem jak rozwiązać twój problem, ale znam przyczynę, która może okazać się wskazówką.
Problem polega na tym, że Google API odczytuje rozmiar obszaru na którym ma załadować mapę i ładuje tyle fragmentów mapy ile się na nim zmieści, z małym zapasem.
Rozwiązaniem mogłoby być zdefiniowanie także obszaru w tym ukrytym divie.
ciembor
No tak, div z display:none nie ma wymiarów:|.
!*!
To mu je nadaj. Albo przy pomocy ajax wczytaj mapę do diva.
ciembor
Nie do końca mnie zrozumiałeś. Wymiary były nadane w CSS, ale były brane pod uwagę wyłącznie, kiedy div miał display:block, przy display:none były ignorowane. Z Ajaksem - wybacz, nie wiem co masz na myśli.
gargamel
A jakbys nie zmianiał display-u diva z mapą (cały czas byłby 'block'), a zamiast tego wrzucił owego diva z mapką, do innego diva, którego widzialnością będziesz se manipulował ?
wiiir
a moze cos w stylu position:absolute;top:-9999;left:-9999; diva nie widac smile.gif i wymiary sa smile.gif zalezy jak chesz tego uzyc
ciembor
Poradziłem sobie już z tym problemem w inny sposób. Pomogły dwie metody api googlemaps:

Kod
  function show_map() {
    $('#bigmap').fadeIn('fast');
    map.checkResize();
    map.setCenter(point, 16);
  }
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.