Google地图,在多个位置提供地址信息

时间:2016-10-31 14:35:10

标签: javascript google-maps-api-3

我想知道是否有人可以帮助我,我搜索了这个网站,但我还没有找到答案

我的javascript生锈了,如果还有别的话,我在这里有一个js小提琴https://jsfiddle.net/ux8L7beg/

我想要做的是在infowindow弹出窗口中,我希望能够通过我的变量称为功能显示多个位置的标题,即当你将鼠标悬停在格拉斯哥上时,标题格拉斯哥展厅将出现在infowindow中,I我猜我正专注于这个特定的部分

    var content = '<h3>' + "Showroom"  + features + '</h3>' + ""  

     var infowindow = new google.maps.InfoWindow();
     google.maps.event.addListener(marker, 'mouseover', (function(marker, content, infowindow) {
        return function() {
            infowindow.setContent(content);
            infowindow.open(map, marker);
        };
    })(marker, content,  infowindow));

    }
    /* add showroom locations */
    var features = [{
        position: new google.maps.LatLng(55.8511441, -4.2793418),
        type: 'showroom',
        title: 'Glasgow Showroom'
    }, {
        position: new google.maps.LatLng(53.3497877, -1.4821523),
        type: 'showroom',
        title: 'Sheffield Showroom'
    },
有谁能够指出我正确的方向?

由于 罗比

1 个答案:

答案 0 :(得分:0)

我简化了你的代码以获得你需要的东西。希望它可以帮到你:

&#13;
&#13;
var infoWindow = new google.maps.InfoWindow();
var marker, i;
for (var i = 0; i < locations.length; i++) {
  var lat = locations[i].position.lat();
  var lng = locations[i].position.lng();
  marker = new google.maps.Marker({
    position: new google.maps.LatLng(lat, lng),
    map: map,
    icon: 'https://cdn2.iconfinder.com/data/icons/flat-ui-icons-24-px/24/location-24-32.png'
  });
  var prev_infowindow = false;
  google.maps.event.addListener(marker, 'mouseover', (function(marker, i) {
    return function() {
      var contentString = locations[i].title;
      var infoWindow = new google.maps.InfoWindow({
        content: contentString
      });
      if (prev_infowindow) {
        prev_infowindow.close();
      }
      prev_infowindow = infoWindow;
      infoWindow.open(map, marker);
    }
  })(marker, i));
}
&#13;
&#13;
&#13;

我还删除了您的addMarker功能和最后的for循环并创建了我自己的循环。

这是工作JSFIDDLE