Search code examples
jquerygoogle-mapsgoogle-maps-api-2

Google maps and Jquery is showing only few points


i am trying to make my custom points in google map (over 2 500 adresses) and google maps is showing only few points. Does anyone knows, where is a problem?

I am sorry for my czech notes in code.

The code is:

<!DOCTYPE html>
<html lang="en">
<head>
     <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;sensor=true_or_false
    &amp;key=AIzaSyAgq2BmPYqJUF85Jk9-zrja22N3cpe_LfM"
    type="text/javascript">
  </script>

    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>


 <script type="text/javascript">

    onload = function() {
        loadMap();
    }

  </script>

 <script type="text/javascript">
var map = null;
var geocoder = new GClientGeocoder();
var zoom = 10;
// definice vzhledu ikony (špendlíku) na mapě
var baseIcon = new GIcon(G_DEFAULT_ICON);
baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
baseIcon.shadow = "";
baseIcon.iconSize = new GSize(20, 34);
baseIcon.shadowSize = new GSize(37, 34);
baseIcon.iconAnchor = new GPoint(20, 34);
baseIcon.infoWindowAnchor = new GPoint(20, 2);

function initialize() {
  // zobrazení základní prázdné mapy
  if (GBrowserIsCompatible()) {
    map = new GMap2(document.getElementById("map"));
    map.setCenter(new GLatLng(49.938402, 17.903719), zoom);
    map.setUIToDefault();
  }
}

// Vytvoření značek s písmennými indexy
function createMarker(point, index, address, name, mark) {
  // Vytvoření ikony (špendlíku) s písmenkem
  var letter = String.fromCharCode("A".charCodeAt(0) + index);
  var letteredIcon = new GIcon(baseIcon);
  letteredIcon.image = "http://www.google.com/mapfiles/marker.png";
  // Vytvoření GMarkerOptions objektu
  markerOptions = { icon:letteredIcon };
  map.setCenter(point, zoom);
  var marker = new GMarker(point, markerOptions);
  GEvent.addListener(marker, "click", function() {
    marker.openInfoWindowHtml("<b>" + name + "</b><br />" + address + "<br /><i>" + mark + "</i>");
  });
  return marker;
}



// Umístění několika značek

/* Tohle je vzor, jak to musí vypadat:
        pro města s ulicemi:
 showAddress("Jarkovická,50/7,74601,Opava");
        pro města bez ulic:
 showAddress("64, 746 01, Stěbořice");*/

function markers() {

    //adresses

showAddress("Akátová,455,74731,Velké Hoštice");
showAddress("Akátová,455,74731,Velké Hoštice");
showAddress("Albertovec,292,74728,Štěpánkovice");
showAddress("Albertovec,297,74728,Štěpánkovice");
showAddress("Albertovec,297,74728,Štěpánkovice");
showAddress("Albertovec,297,74728,Štěpánkovice");
showAddress("Alejní,378/26,74721,Kravaře");
showAddress("Alejní,702/1,74721,Kravaře");
showAddress("Alejní,728/13,74721,Kravaře");
showAddress("Almužnická,182/2,74601,Opava");
showAddress("Almužnická,182/2,74601,Opava");
showAddress("Anenská,1494/8,74601,Opava");
showAddress("Anenská,1496/10,74601,Opava");
showAddress("Anenská,1496/10,74601,Opava");
showAddress("Anenská,1503/18,74601,Opava");
showAddress("Anenská,2850/25,74601,Opava");
showAddress("Anenská,2850/25,74601,Opava");
showAddress("Anenská,2850/25,74601,Opava");
showAddress("Antonína Dvořáka,1363/16,74801,Hlučín");
showAddress("Antonína Dvořáka,1456/25a,74801,Hlučín");
showAddress("Antonína Sovy,1214/22,74705,Opava");
showAddress("Antonína Sovy,1216/26,74705,Opava");
showAddress("Antonína Sovy,1227/10,74705,Opava");
showAddress("Antonína Sovy,1242/4,74705,Opava");
showAddress("Antonína Sovy,1393/7,74705,Opava");
showAddress("Antonína Sovy,1395/11,74705,Opava");
showAddress("Antonína Sovy,1395/11,74705,Opava");
showAddress("Antonína Sovy,1517/39,74705,Opava");
showAddress("Antonína Sovy,1517/39,74705,Opava");
showAddress("Antonína Vaška,207,74792,Háj ve Slezsku");
showAddress("Antonína Vaška,207,74792,Háj ve Slezsku");
showAddress("Antonína Vaška,207,74792,Háj ve Slezsku");
showAddress("Antonína Vaška,73,74792,Háj ve Slezsku");
showAddress("Antonína Vaška,86,74792,Háj ve Slezsku");
showAddress("Osvobození,492,74757,Slavkov");

}

function showAddress(address, index, name, mark) {

  geocoder.getLatLng( //funkce ktera z adresy udela souradnice 

    address, 

    function(point){ 
      if (point) {
        map.addOverlay(createMarker(point, index, address, name, mark)); 
      } 

    } 

  );

}

</script>



<body onload="initialize();markers();"></body>

     <div id="map" style="width: 1000px; height: 500px"></div>
  <div id="searchcontrol"></div>


</body>
</html>

Solution

  • The client geocoder will only work for about 10 addresses before running into the quota/rate limits, geocode your addresses offline and "cache" the results to use when loading your page.

    See Geocoding Strategies in the "articles" section of the documentation.