Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Google map api i firefox
Forum PHP.pl > Forum > Po stronie przeglądarki
fander
Mam nietypowy problem z którym nie mogę sobie poradzi. Jak w tytule wstawiłem sobie na stronę mapkę googli korzystając z google map api, problem polega na tym że w ff często gęsto ta mapa nie ładuje się (nie wyświetla się) w ie nie ma takiego problemu. Współrzędne są pobierane z bazy danych, to napewno działa :). Mapa nie wyświetla się w momencie gdy przeglądarka próbuje pobrac jakieś informacje z gg.google.com

kod wygląda nastepująco:
Kod
<script type="text/javascript">
      var mapa;        
          var gmarkers = [];
          var ikona;
          function mapaStart(){
              
              if(GBrowserIsCompatible()){
                  mapa = new GMap2(document.getElementById("mapka"));
                  
                  // włącza przybliżenie mapy po dwókrotnym kliknięciu na mapę
                  mapa.enableDoubleClickZoom();  
                  
                  // włącza przybliznie całkowite po dwukrotnym kliknieciu w mapę
                  mapa.enableContinuousZoom();
                  
                  //włącza przybliżanie za pomoca skrola
                  mapa.enableScrollWheelZoom();
                  
                  //centrujemy mapę
                  mapa.setCenter(new GLatLng(x.y),11);                
                  
                  //typ mapy G_NORMAL_MAP, G_SATELLITE_MAP, G_HYBRID_MAP oraz G_PHYSICAL_MAP
                  mapa.setMapType(G_NORMAL_MAP);
  
                  //kontrolka zoom i przesuwania mapy        
                  mapa.addControl(new GLargeMapControl());
                  
                  //Ustawiamy dosepne typu mapy                
                  var typyMapy = mapa.getMapTypes();      
                  typyMapy[0].getName= function() { return "Mapa";}  
                  typyMapy[1].getName = function() { return "Satelita";}
                  typyMapy[2].getName = function() { return "Hybryda";}  
                  
                  //dodawanie kontrolki typu mapy    
                  mapa.addControl(new GMapTypeControl());  
                  
                  //kontrolka skali mapy
                  mapa.addControl(new GScaleControl());
                  
                  
                  
                  ikona = new GIcon();
                  ikona.image = "http://maps.google.com/mapfiles/kml/pal3/icon56.png";  
                  ikona.shadow = "http://maps.google.com/mapfiles/kml/pal2/icon56s.png";  
                  ikona.iconSize = new GSize(32, 32);  
                  ikona.infoWindowAnchor = new GPoint(16,16);  
                  ikona.iconAnchor = new GPoint(16,16);  
                  ikona.shadowSize = new GSize(59, 32);
                  
                  
                  dodajMarkery();
                  }
              else{
                  alert("Posiadasz niekompatybilną przeglądarkę");                
              }
              
                  
          }    
          
          function dodajMarker(szerokosc,dlugosc,opcje,html){    
                  var punkt = new GLatLng(szerokosc,dlugosc);        
                  var marker = new GMarker(punkt,opcje);
                  marker.txt = html;
                  mapa.addOverlay(marker);
                  gmarkers.push(marker);
                  GEvent.addListener(marker,"click",function() {
                      marker.openInfoWindowHtml(marker.txt);  
                  });
              }            
          
         function dodajMarker2(szerokosc,dlugosc,opcje){    
              var punkt = new GLatLng(szerokosc,dlugosc);        
              var marker = new GMarker(punkt,opcje);
              mapa.addOverlay(marker);
              gmarkers.push(marker);  
         }
        
function dodajMarkery(){                
dodajMarker2(x,y,{icon: ikona});
}
      </script>
karolrynio
A co pokazuje konsola błędów?

Jeśli nie ma błędów to może chodzić o to, że div do którego ładujesz mapkę jest ukryty (display: none itp) wtedy pod IE6 wszystko działa dobrze a pod Firefoxem mapka nie wyświetla się tak jak powinna. Rozwiązanie wtedy jest proste na czas ładowania mapki dajesz na elemencie display: block a po skończeniu ponownie go ukrywasz.
fander
W sumie to nie jest kwestia wyświetlania mapki tylko jej załadowania. Przeglądarka próbuje coś sobie pobrać z googli raz to pobiera i działa a innym razem nie. Przeglądarka raz wykona 4 zapytania do gg.google.com i wtedy mapka ładuje się a innym razem wykona tylko 3 zapytania a 4 ani widu ani świtu i wtedy właśnie się przycina.

Problem rozwiązałem poprzez aktualizacje ff do wersji 3,5 teraz wszystko śmiga. Proszę o zamknięcie tematu
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.