我想自定义由GDirections对象绘制的图标。我有我用来构造一个路径纬度经度坐标的列表。但是,我找不到定制(甚至关闭)是由API自动放置标记的任何方式。

var map;
map = new GMap2(document.getElementById("map_canvas"));
.... //get the path coordinates
var route = new GDirections(map);
route.load(path_coordinates);

调用route.getPolyline().hide()隐藏路径而不是标记。调用route.getMarker(1).isHidden()返回true,显然隐藏它不会改变任何东西。 难道这个功能不是由API所支持? 我使用地图API 2.81

有帮助吗?

解决方案

试试这个代码:

var map;
map = new GMap2(document.getElementById("map_canvas"));
.... //get the path coordinates
var route = new GDirections(map);
route.load(path_coordinates);
GEvent.addListener(route , "addoverlay", hideDirMarkers); 
function hideDirMarkers(){ 
        var numMarkers = route.getNumGeocodes() 
        for (var i = 0; i < numMarkers; i++) { 
                var marker = route.getMarker(i); 
                if (marker != null) 
                        marker.hide(); 
                else 
                        alert("Marker is null"); 
        } 
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top