2009-12-02 81 views
1

是否有任何方法可以刪除方向放在地圖上的標記?我有4個位置顯示在地圖上。用戶所在的綠色箭頭以及標記爲A,B,C的3個位置。如果我點擊其中的一個,它將在用戶位置和標記之間進行路由。問題在於谷歌在地圖上添加了一個新的A & B標記作爲路線的開始和結束。現在我在地圖上有幾個A和B標記,它很混亂。谷歌地圖版本3刪除方向標記

感謝

回答

1

不知道這是有幫助的還是沒有。當你創建一個新的GDirection併爲它提供一個地圖對象時,一旦方向被加載,它將自動地將折線繪製到地圖上。這也會在旅程的開始和結束時自動添加標記。

但是,我注意到,如果您最初不提供地圖對象,而是使用「加載」事件偵聽器手動將折線添加到地圖,則會得到線條而不是標記。

//Don't supply a map to GDirections() 
var direction = new GDirections(); 

//Make sure {getPolyline:true} is given to the load function 
direction.load("here to there", {getPolyline:true}); 

GEvent.addListener(direction, 
        "load", 
        function(){ map.addOverlay(direction.getPolyline()); } 
); 

這可能是比查找並刪除標記更容易,特別是如果你正在使用的「負荷」事件偵聽器反正。

0

通常你能夠根本就marker.setMap(空),但由於路線調用自動將地圖上的A & B標記,你不必對他們的直接訪問,因此無法將其刪除這條路。

9

DirectionsRendererOptions設置suppressMarkerstrue

1

命中菜單然後層和左下壓清楚地圖上。這應該清除地圖上的所有內容。

2

這是一箇舊帖子,但我跑了同一個問題。我用自己的標記繪製地圖,我會選擇其中的幾個和起點,然後用標記A,B,C顯示方向......問題是如何刪除方向並再次顯示標記。

這裏是我工作刪除與標記方向路徑(A,B,C,等等)。

directionsDisplay.setMap(null); 
directionsDisplay = new google.maps.DirectionsRenderer(); 
directionsDisplay.setMap(map); 
RefreshMarkers(); //your function to draw your markers 

directionDisplay是全局聲明的。它是API v3。