javascript - Google Maps - center map on marker click -


i have following code placing several markers on google map.

what want when user clicks on marker zooms in , centers map marker position (this bit that's not working - towards end of code in setmarkers function).

any ideas?

var infowindow = null; var sites = []; var partsofstr = []; var partsofstr2 = []; var bounds;  $(document).ready(function () {     $("select[id*='coordlist']").find("option").each(function () {         partsofstr = $(this).val().split(',');         partsofstr2 = $(this).text().split('^');         sites.push([partsofstr2[0], parsefloat(partsofstr[0]), parsefloat(partsofstr[1]), partsofstr[2], partsofstr2[1], partsofstr2[2], partsofstr2[3], partsofstr[3], partsofstr[4], partsofstr[5]]);     });     initialize(); });  function initialize() {     bounds = new google.maps.latlngbounds();     var mapoptions = {         zoom: 6,         center: new google.maps.latlng(54.57951, -4.41387),         scrollwheel: false,         maptypeid: google.maps.maptypeid.hybrid     }      var map = new google.maps.map(document.getelementbyid('map'), mapoptions);      setmarkers(map, sites);      infowindow = new google.maps.infowindow({         content: "loading..."     });      google.maps.event.addlistener(infowindow,'closeclick',function(){         map.setcenter(new google.maps.latlng(54.57951, -4.41387));         map.setzoom(6);     });  }    function setmarkers(map, markers) {      (var = 0; < markers.length; i++) {         var sites = markers[i];         var sitelatlng = new google.maps.latlng(sites[1], sites[2]);         var marker = new google.maps.marker({             position: sitelatlng,             map: map,             title: sites[0],             html: "<div class='mapdesc'>content here...</div>"         });          google.maps.event.addlistener(marker, "click", function () {             infowindow.setcontent(this.html);             infowindow.open(map, this);             map.setcenter(marker.getposition()); // not working!!!!!!!             map.setzoom(10);         });          bounds.extend(new google.maps.latlng(sites[1], sites[2]));         map.fitbounds(bounds);     }  } 

marker left pointing last marker added. either use function closure or "this" did infowindow:

    google.maps.event.addlistener(marker, "click", function () {         infowindow.setcontent(this.html);         infowindow.open(map, this);         map.setcenter(this.getposition());          map.setzoom(10);     }); 

Comments

Popular posts from this blog

Unable to remove the www from url on https using .htaccess -