启用谷歌地图公共汽车站的图标点击(Enable bus stop icons clickable i

2019-07-30 22:41发布

使用谷歌地图API,我怎么能设置公交车站图标,点击,而且在信息窗口显示的总线号服务? 我可以在谷歌地图网站上看到,它被启用。 但是,当我创建使用地图API自己的代码,似乎这是默认情况下禁用?

如果我不说明白了,请参阅图片链接。

https://dl.dropbox.com/u/46360728/diff.maps.png

左边是在maps.google.com网站地图,而右侧是我实现的谷歌地图。 正如你所看到的,我无法点击我的落实公交车站不像其他的屏幕截图。

任何帮助将非常感激。

Answer 1:

现在你不能得到它的工作。 这是在GMAP的API的“承认”错误: https://code.google.com/p/gmaps-api-issues/issues/detail?id=145

你会发现,在对API网站官方过境层的代码演示,也没有互动: https://developers.google.com/maps/documentation/javascript/examples/layer-transit 。



Answer 2:

你可以得到公交站名,ID和坐标,然后与任何其他API获取有关巴士站的信息。 这里是代码:

var overlay;
overlay = new google.maps.OverlayView();
overlay.draw = function() {};
overlay.setMap(map);

$('#map-canvas').click(function(event){
    var point = new google.maps.Point(event.pageX,event.pageY);
    var location = overlay.getProjection().fromContainerPixelToLatLng(point); //get map coordinates by click

    var request = {
      location: location,
      types: ['bus_station','subway_station'], //get bus stops and metro stations
      radius: 10,
    };
    placesService = new google.maps.places.PlacesService(map);
    placesService.search(request, function(result, status, pagination){
      station = result[0];
      if(typeof station != 'undefined'){
        pos = station.geometry['location']; //position
        bus_no = station.name.match(/\[([0-9]+)\]/i)[1]; //get ID by name
        alert(bus_no); // ID
      }
    });
  });


文章来源: Enable bus stop icons clickable in Google Maps