Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I tried to follow instructions for autozoom on Google maps so that it always fits to the markers on the maps. But I can't get it to work. Can anyone see what's wrong with my code?

<script>

    function initMap() {
        var myLatLng = { lat: 55.561213987, lng: 8.1286275387 };

        var map = new google.maps.Map(document.getElementById('map-canvas'), {
            zoom: 13,
            center: myLatLng    
        });

        var marker = new google.maps.Marker({
            position: myLatLng,
            map: map,
            title: 'Top moderne sommerhus med alle faciliteter beliggende p? en sk?n grund med mange'
        });


        var marker = new google.maps.Marker({
            position: { lat: 55.5577227947, lng: 8.1225042121 },
            label: "1",
            map: map,
            title: 'L?kkert sommerhus beliggende p? en dejlig naturgrund'
        });

        var marker = new google.maps.Marker({
            position: { lat: 55.5570797278, lng: 8.1276749566 },
            label: "2",
            map: map,
            title: 'Sommerhus med str?tag beliggende p? en meget stor grund med mange fyrretr?er og '
        });

        var marker = new google.maps.Marker({
            position: { lat: 55.56169, lng: 8.13126 },
            label: "3",
            map: map,
            title: 'Dette sk?nne feriehus fremst?r utroligt flot'
        });

        var marker = new google.maps.Marker({
            position: { lat: 55.5560563333123, lng: 8.12075257301331 },
            label: "4",
            map: map,
            title: 'Sp?ndende, velholdt, str?t?kt feriehus i sten, beliggende p? delvis lukket natur'
        });

        var marker = new google.maps.Marker({
            position: { lat: 55.55282, lng: 8.12843 },
            label: "5",
            map: map,
            title: 'Kun 850 m fra Vesterhavet med den dejlige sandstrand og ca'
        });


        var map;
        var bound = new google.maps.LatLngBounds();
        var markers = new Array();

        //jQuery style entry point, change if necessary
        $(document).ready(function(){
          initMap();
          initMarkers();

          for(var i in markers)
          {
            bound.extend(markers[i].getPosition());
          }
          map.fitBounds(bound);
        });

        }
</script>

Any help will be much appreciated!

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
110 views
Welcome To Ask or Share your Answers For Others

1 Answer

  1. All your markers have the same name.
  2. You don't ever put them in the markers array.
  3. initMarkers doesn't exist.

proof of concept fiddle

code snippet:

function initMap() {
  var myLatLng = {
    lat: 55.561213987,
    lng: 8.1286275387
  };

  var map = new google.maps.Map(document.getElementById('map-canvas'), {
    zoom: 13,
    center: myLatLng
  });
  var markers = [];

  var marker = new google.maps.Marker({
    position: myLatLng,
    map: map,
    title: 'Top moderne sommerhus med alle faciliteter beliggende p? en sk?n grund med mange'
  });
  markers.push(marker);


  var marker = new google.maps.Marker({
    position: {
      lat: 55.5577227947,
      lng: 8.1225042121
    },
    label: "1",
    map: map,
    title: 'L?kkert sommerhus beliggende p? en dejlig naturgrund'
  });
  markers.push(marker);
  var marker = new google.maps.Marker({
    position: {
      lat: 55.5570797278,
      lng: 8.1276749566
    },
    label: "2",
    map: map,
    title: 'Sommerhus med str?tag beliggende p? en meget stor grund med mange fyrretr?er og '
  });
  markers.push(marker);
  var marker = new google.maps.Marker({
    position: {
      lat: 55.56169,
      lng: 8.13126
    },
    label: "3",
    map: map,
    title: 'Dette sk?nne feriehus fremst?r utroligt flot'
  });
  markers.push(marker);
  var marker = new google.maps.Marker({
    position: {
      lat: 55.5560563333123,
      lng: 8.12075257301331
    },
    label: "4",
    map: map,
    title: 'Sp?ndende, velholdt, str?t?kt feriehus i sten, beliggende p? delvis lukket natur'
  });
  markers.push(marker);
  var marker = new google.maps.Marker({
    position: {
      lat: 55.55282,
      lng: 8.12843
    },
    label: "5",
    map: map,
    title: 'Kun 850 m fra Vesterhavet med den dejlige sandstrand og ca'
  });
  markers.push(marker);
  // initMarkers();
  var bound = new google.maps.LatLngBounds();

  for (var i in markers) {
    bound.extend(markers[i].getPosition());
  }
  map.fitBounds(bound);
}

//jQuery style entry point, change if necessary
$(document).ready(function() {
  initMap();
});
html,
body,
#map-canvas {
  height: 100%;
  width: 100%;
  margin: 0px;
  padding: 0px
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maps.googleapis.com/maps/api/js"></script>
<div id="map-canvas"></div>

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...