简体   繁体   中英

Google Map marker url

Can anybody help. I have below code but when I click on the marker it redirects me to the same page:

<script src="http://maps.google.com/maps/api/js?sensor=false" type="text/javascript"></script>

<script type="text/javascript"> 
function initialize() {
  var myOptions = {
    zoom: 14,
    center: new google.maps.LatLng(<?php echo $latitude; ?>, <?php echo $longitude; ?>),
    mapTypeId: google.maps.MapTypeId.ROADMAP,
    streetViewControl: true,
    scrollwheel: false
  }

  var map = new google.maps.Map(document.getElementById('map_canvas'), myOptions);

  for (var i = 0; i < locations.length; i++) {
      var image = new google.maps.MarkerImage('images/greenmarkers/'+ i +'.png');
      var location = locations[i];
      var myLatLng = new google.maps.LatLng(location[1], location[2]);
      var marker = new google.maps.Marker({
          position: myLatLng,
          map: map,
          icon: image,
          title: location[0],
          url: location[3]
      });


google.maps.event.addListener(marker, 'click', function() {
  window.location.href = marker.url;
});
  }
}
</script>

<script type="text/javascript"> 
var locations = [['test', 63.3740200000000, 19.6301320000000, 'http://www.test.com'],['test1', 63.3725155758185, 19.6264879703522, 'http://www.test1.com'],['test2', 63.3762550022764, 19.6305649280548, 'http://www.test2.com']];
</script> 

Here is a working code:

function loadURL(marker) {
    return function () {
        window.location.href = marker.url;
    }
}

function initialize() {
  var myOptions = {
    zoom: 5,
    center: new google.maps.LatLng(50.00, 50.00),
    mapTypeId: google.maps.MapTypeId.ROADMAP,
    streetViewControl: true,
    scrollwheel: false
  }

  locations=[["aaa",51.00, 51.00, "http://www.atoztoa.com"], ["bbb",52.00, 52.00, "http://www.google.com"]];

  var map = new google.maps.Map(document.getElementById('map_canvas'), myOptions);

  for (var i = 0; i < locations.length; i++) {
      var image = new google.maps.MarkerImage('roundedbutton1.png');
      var location = locations[i];
      var myLatLng = new google.maps.LatLng(location[1], location[2]);
      var marker = new google.maps.Marker({
          position: myLatLng,
          map: map,
          icon: image,
          title: location[0],
          url: location[3]
      });

        google.maps.event.addListener(marker, 'click', loadURL(marker));
  }
}
marker[i] = new google.maps.Marker({
          position: myLatLng,
          map: map,
          icon: image,
          title: location[0],
          url: location[3]
      });


google.maps.event.addListener(marker[i], 'click', function() {
  window.location.href = this.url;
});

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM